From 8af1024931e4b31dbca4f33b1fcd5e5ea6166c4e Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Tue, 23 Nov 2021 06:23:06 -0800 Subject: [PATCH] chore: update stage0 --- stage0/src/CMakeLists.txt | 137 +- stage0/src/Init/Control/Except.lean | 4 + stage0/src/Init/Data/String/Basic.lean | 43 +- stage0/src/Init/Notation.lean | 2 +- stage0/src/Lean/Compiler.lean | 1 + stage0/src/Lean/Compiler/FFI.lean | 25 + stage0/src/Lean/Elab/BuiltinCommand.lean | 8 +- stage0/src/Lean/Elab/Command.lean | 13 +- stage0/src/Lean/Elab/Frontend.lean | 4 +- stage0/src/Lean/Elab/StructInst.lean | 17 +- stage0/src/Lean/Elab/Structure.lean | 11 +- stage0/src/Lean/Elab/Tactic/Simp.lean | 55 +- stage0/src/Lean/Elab/Tactic/Split.lean | 2 +- stage0/src/Lean/Elab/Term.lean | 2 +- stage0/src/Lean/Elab/Util.lean | 10 +- stage0/src/Lean/Meta/ExprDefEq.lean | 33 +- stage0/src/Lean/Meta/Tactic/Simp/Rewrite.lean | 6 +- stage0/src/Lean/Parser/Command.lean | 12 +- .../PrettyPrinter/Delaborator/Builtins.lean | 7 +- stage0/src/Lean/Server/AsyncList.lean | 10 +- stage0/src/Lean/Server/FileWorker.lean | 7 +- .../Server/FileWorker/RequestHandling.lean | 24 +- stage0/src/Lean/Server/InfoUtils.lean | 4 +- stage0/src/Lean/Server/Requests.lean | 33 +- .../src/Lean/Server/Rpc/RequestHandling.lean | 2 +- stage0/src/Lean/Server/Snapshots.lean | 12 +- stage0/src/Lean/Util/Path.lean | 43 +- stage0/src/Leanc.lean | 45 +- stage0/src/Leanpkg.lean | 2 +- stage0/src/bin/leanc.in | 9 +- stage0/src/include/lean/lean.h | 35 +- stage0/src/kernel/type_checker.cpp | 24 + stage0/src/kernel/type_checker.h | 4 + stage0/src/runtime/alloc.cpp | 6 + stage0/src/runtime/compact.cpp | 1 + stage0/src/runtime/debug.cpp | 6 + stage0/src/runtime/object.cpp | 4 + stage0/src/runtime/sharecommon.cpp | 1 + stage0/src/shell/CMakeLists.txt | 47 +- stage0/src/util/CMakeLists.txt | 5 +- stage0/src/util/ffi.cpp | 19 + stage0/src/util/shell.cpp | 17 +- stage0/stdlib/Init/Control/Except.c | 38 + stage0/stdlib/Init/Data/String/Basic.c | 301 +- stage0/stdlib/Init/Meta.c | 26 +- stage0/stdlib/Init/Notation.c | 43 +- stage0/stdlib/Lean/Compiler.c | 6 +- stage0/stdlib/Lean/Compiler/FFI.c | 248 + stage0/stdlib/Lean/Elab/Attributes.c | 157 +- stage0/stdlib/Lean/Elab/Binders.c | 157 +- stage0/stdlib/Lean/Elab/BuiltinCommand.c | 1271 +- stage0/stdlib/Lean/Elab/BuiltinNotation.c | 159 +- stage0/stdlib/Lean/Elab/Command.c | 1184 +- stage0/stdlib/Lean/Elab/DefView.c | 567 +- stage0/stdlib/Lean/Elab/Deriving/BEq.c | 10 +- stage0/stdlib/Lean/Elab/Deriving/Basic.c | 6 +- stage0/stdlib/Lean/Elab/Deriving/DecEq.c | 12 +- stage0/stdlib/Lean/Elab/Deriving/FromToJson.c | 18 +- stage0/stdlib/Lean/Elab/Deriving/Hashable.c | 6 +- stage0/stdlib/Lean/Elab/Deriving/Ord.c | 6 +- stage0/stdlib/Lean/Elab/Deriving/Repr.c | 6 +- stage0/stdlib/Lean/Elab/Do.c | 45 +- stage0/stdlib/Lean/Elab/ElabRules.c | 546 +- stage0/stdlib/Lean/Elab/Frontend.c | 68 +- stage0/stdlib/Lean/Elab/LetRec.c | 157 +- stage0/stdlib/Lean/Elab/MacroRules.c | 428 +- stage0/stdlib/Lean/Elab/Match.c | 157 +- stage0/stdlib/Lean/Elab/MutualDef.c | 165 +- stage0/stdlib/Lean/Elab/Notation.c | 1 - stage0/stdlib/Lean/Elab/PatternVar.c | 157 +- stage0/stdlib/Lean/Elab/PreDefinition/Main.c | 157 +- stage0/stdlib/Lean/Elab/Quotation.c | 26 +- stage0/stdlib/Lean/Elab/Quotation/Precheck.c | 157 +- stage0/stdlib/Lean/Elab/StructInst.c | 338 +- stage0/stdlib/Lean/Elab/Structure.c | 1597 +- stage0/stdlib/Lean/Elab/Syntax.c | 307 +- stage0/stdlib/Lean/Elab/Tactic/Basic.c | 157 +- stage0/stdlib/Lean/Elab/Tactic/Conv/Simp.c | 40 +- stage0/stdlib/Lean/Elab/Tactic/Match.c | 157 +- stage0/stdlib/Lean/Elab/Tactic/Simp.c | 502 +- stage0/stdlib/Lean/Elab/Tactic/Split.c | 2 +- stage0/stdlib/Lean/Elab/Term.c | 2051 ++- stage0/stdlib/Lean/Elab/Util.c | 605 +- stage0/stdlib/Lean/Meta/ExprDefEq.c | 11270 ++++++++----- stage0/stdlib/Lean/Meta/IndPredBelow.c | 12 +- stage0/stdlib/Lean/Meta/Injective.c | 6 +- stage0/stdlib/Lean/Meta/RecursorInfo.c | 268 +- stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c | 806 +- stage0/stdlib/Lean/Parser/Command.c | 1696 +- .../Lean/PrettyPrinter/Delaborator/Builtins.c | 365 +- stage0/stdlib/Lean/PrettyPrinter/Formatter.c | 2 - stage0/stdlib/Lean/Server/AsyncList.c | 689 +- stage0/stdlib/Lean/Server/FileWorker.c | 675 +- .../Lean/Server/FileWorker/RequestHandling.c | 13842 +++++++--------- .../Lean/Server/FileWorker/WidgetRequests.c | 3991 ++--- stage0/stdlib/Lean/Server/InfoUtils.c | 571 +- stage0/stdlib/Lean/Server/Requests.c | 1142 +- .../stdlib/Lean/Server/Rpc/RequestHandling.c | 1114 +- stage0/stdlib/Lean/Server/Snapshots.c | 1059 +- stage0/stdlib/Lean/Server/Watchdog.c | 2 + stage0/stdlib/Lean/Util/Path.c | 594 +- 101 files changed, 27275 insertions(+), 23622 deletions(-) create mode 100644 stage0/src/Lean/Compiler/FFI.lean create mode 100644 stage0/src/util/ffi.cpp create mode 100644 stage0/stdlib/Lean/Compiler/FFI.c diff --git a/stage0/src/CMakeLists.txt b/stage0/src/CMakeLists.txt index d89edee69c..8b7d09a5a6 100644 --- a/stage0/src/CMakeLists.txt +++ b/stage0/src/CMakeLists.txt @@ -15,11 +15,12 @@ set(LEAN_VERSION_IS_RELEASE 0) # This number is 1 in the release revision, and set(LEAN_SPECIAL_VERSION_DESC "" CACHE STRING "Additional version description like 'nightly-2018-03-11'") set(LEAN_VERSION_STRING "${LEAN_VERSION_MAJOR}.${LEAN_VERSION_MINOR}.${LEAN_VERSION_PATCH}") if (LEAN_SPECIAL_VERSION_DESC) - set(LEAN_VERSION_STRING "${LEAN_VERSION_STRING}-${LEAN_SPECIAL_VERSION_DESC}") + string(APPEND LEAN_VERSION_STRING "-${LEAN_SPECIAL_VERSION_DESC}") endif() set(LEAN_EXTRA_LINKER_FLAGS "" CACHE STRING "Additional flags used by the linker") set(LEAN_EXTRA_CXX_FLAGS "" CACHE STRING "Additional flags used by the C++ compiler") +set(LEAN_TEST_VARS "LEAN_CC=${CMAKE_C_COMPILER}" CACHE STRING "Additional environment variables used when running tests") if (NOT CMAKE_BUILD_TYPE) message(STATUS "No build type selected, default to Release") @@ -53,7 +54,6 @@ option(TRACK_LIVE_EXPRS "TRACK_LIVE_EXPRS" OFF) option(CUSTOM_ALLOCATORS "CUSTOM_ALLOCATORS" ON) option(SAVE_SNAPSHOT "SAVE_SNAPSHOT" ON) option(SAVE_INFO "SAVE_INFO" ON) -option(FAKE_FREE "Disable actually freeing runtime objects, useful for debugging memory management issues" OFF) option(SMALL_ALLOCATOR "SMALL_ALLOCATOR" ON) option(LAZY_RC "LAZY_RC" OFF) option(RUNTIME_STATS "RUNTIME_STATS" OFF) @@ -65,11 +65,6 @@ option(CHECK_OLEAN_VERSION "Only load .olean files compiled with the current ver set(LEAN_EXTRA_MAKE_OPTS "" CACHE STRING "extra options to lean --make") set(LEANC_CC "cc" CACHE STRING "C compiler to use in `leanc`") -if ("${FAKE_FREE}" MATCHES "ON") - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_FAKE_FREE") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_FAKE_FREE") -endif() - if ("${LAZY_RC}" MATCHES "ON") set(LEAN_LAZY_RC "#define LEAN_LAZY_RC") endif() @@ -87,13 +82,11 @@ else() endif() if ("${RUNTIME_STATS}" MATCHES "ON") - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_RUNTIME_STATS") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_RUNTIME_STATS") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_RUNTIME_STATS") endif() if (NOT("${CHECK_OLEAN_VERSION}" MATCHES "ON")) - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_IGNORE_OLEAN_VERSION") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_IGNORE_OLEAN_VERSION") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_IGNORE_OLEAN_VERSION") endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten") @@ -109,15 +102,14 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten") # From https://emscripten.org/docs/compiling/WebAssembly.html#backends: # > The simple and safe thing is to pass all -s flags at both compile and link time. set(EMSCRIPTEN_SETTINGS "-s ALLOW_MEMORY_GROWTH=1 -s DISABLE_EXCEPTION_CATCHING=0 -s MAIN_MODULE=1 -fexceptions") - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_EMSCRIPTEN ${EMSCRIPTEN_SETTINGS}") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_EMSCRIPTEN ${EMSCRIPTEN_SETTINGS}") - set(LEAN_EXTRA_LINKER_FLAGS "${LEAN_EXTRA_LINKER_FLAGS} ${EMSCRIPTEN_SETTINGS}") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_EMSCRIPTEN ${EMSCRIPTEN_SETTINGS}") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " ${EMSCRIPTEN_SETTINGS}") endif() if (CMAKE_CROSSCOMPILING_EMULATOR) # emscripten likes to quote "node" string(REPLACE "\"" "" CMAKE_CROSSCOMPILING_EMULATOR ${CMAKE_CROSSCOMPILING_EMULATOR}) # HACK(WN): lazy compilation makes Node.js startup time a bad but tolerable ~4s - set(CMAKE_CROSSCOMPILING_EMULATOR "${CMAKE_CROSSCOMPILING_EMULATOR} --wasm-lazy-compilation") + string(APPEND CMAKE_CROSSCOMPILING_EMULATOR " --wasm-lazy-compilation") else() set(CMAKE_CROSSCOMPILING_EMULATOR) endif() @@ -130,13 +122,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") message(STATUS "Windows detected") set(LEAN_WIN_STACK_SIZE "104857600") if (MSVC) - set(LEAN_EXTRA_LINKER_FLAGS "${LEAN_EXTRA_LINKER_FLAGS} /STACK:${LEAN_WIN_STACK_SIZE}") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " /STACK:${LEAN_WIN_STACK_SIZE}") else() - set(LEAN_EXTRA_LINKER_FLAGS "${LEAN_EXTRA_LINKER_FLAGS} -Wl,--stack,${LEAN_WIN_STACK_SIZE}") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -Wl,--stack,${LEAN_WIN_STACK_SIZE}") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " -Wl,--stack,${LEAN_WIN_STACK_SIZE}") set(EXTRA_UTIL_LIBS ${EXTRA_UTIL_LIBS} -lpsapi) endif() - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_WINDOWS -D LEAN_WIN_STACK_SIZE=${LEAN_WIN_STACK_SIZE}") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_WINDOWS -D LEAN_WIN_STACK_SIZE=${LEAN_WIN_STACK_SIZE}") # DLLs must go next to executables on Windows set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") else() @@ -154,13 +145,11 @@ if(NOT MULTI_THREAD) message(STATUS "Disabled multi-thread support, it will not be safe to run multiple threads in parallel") set(AUTO_THREAD_FINALIZATION OFF) else() - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_MULTI_THREAD") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_MULTI_THREAD") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_MULTI_THREAD") endif() if(AUTO_THREAD_FINALIZATION AND NOT MSVC) - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_AUTO_THREAD_FINALIZATION") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_AUTO_THREAD_FINALIZATION") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_AUTO_THREAD_FINALIZATION") endif() if(LLVM) @@ -171,8 +160,7 @@ if(LLVM) message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}") include_directories(${LLVM_INCLUDE_DIRS}) - set(LEAN_EXTRA_CXX_FLAGS "${LEAN_EXTRA_CXX_FLAGS} -D LEAN_LLVM") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -D LEAN_LLVM") + string(APPEND LEAN_EXTRA_CXX_FLAGS " -D LEAN_LLVM") else() #message(WARNING "Disabling LLVM support. JIT compilation will not be available") endif() @@ -190,7 +178,7 @@ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-DNDEBUG") # SPLIT_STACK if (SPLIT_STACK) if ((${CMAKE_SYSTEM_NAME} MATCHES "Linux") AND ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsplit-stack -D LEAN_USE_SPLIT_STACK") + string(APPEND CMAKE_CXX_FLAGS " -fsplit-stack -D LEAN_USE_SPLIT_STACK") message(STATUS "Using split-stacks") else() message(FATAL_ERROR "Split-stacks are only supported on Linux with g++") @@ -205,7 +193,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU") message(FATAL_ERROR "${PROJECT_NAME} requires g++ 4.9 or greater.") endif () elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__CLANG__") + string(APPEND CMAKE_CXX_FLAGS " -D__CLANG__") elseif (MSVC) # All good. Maybe enforce a recent version? set(CMAKE_CXX_FLAGS "/GL /EHsc /W2 /Zc:implicitNoexcept- -D_SCL_SECURE_NO_WARNINGS ${CMAKE_CXX_FLAGS}") @@ -269,55 +257,64 @@ include_directories(${CMAKE_BINARY_DIR}/include) # libleancpp/Lean as well as libleanrt/Init/Std are cyclically dependent. This works by default on macOS, which also doesn't like # the linker flags necessary on other platforms. if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - set(LEANC_STATIC_LINKER_FLAGS "-lleancpp -lInit -lStd -lLean -lleanrt") + string(APPEND LEANC_STATIC_LINKER_FLAGS " -lleancpp -lInit -lStd -lLean -lleanrt") elseif(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten") - set(LEANC_STATIC_LINKER_FLAGS "-lleancpp -lInit -lStd -lLean -lnodefs.js -lleanrt") + string(APPEND LEANC_STATIC_LINKER_FLAGS " -lleancpp -lInit -lStd -lLean -lnodefs.js -lleanrt") else() - set(LEANC_STATIC_LINKER_FLAGS "-Wl,--start-group -lleancpp -lLean -Wl,--end-group -Wl,--start-group -lInit -lStd -lleanrt -Wl,--end-group") + string(APPEND LEANC_STATIC_LINKER_FLAGS " -Wl,--start-group -lleancpp -lLean -Wl,--end-group -Wl,--start-group -lInit -lStd -lleanrt -Wl,--end-group") endif() +set(LEAN_CXX_STDLIB "-lstdc++" CACHE STRING "C++ stdlib linker flags") + if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - set(LEANC_STATIC_LINKER_FLAGS "${LEANC_STATIC_LINKER_FLAGS} -lc++") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -lc++") -else() - set(LEANC_STATIC_LINKER_FLAGS "${LEANC_STATIC_LINKER_FLAGS} -lstdc++") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -lstdc++") + set(LEAN_CXX_STDLIB "-lc++") endif() -set(LEANC_STATIC_LINKER_FLAGS "${LEANC_STATIC_LINKER_FLAGS} -lm") -set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -lm") +string(APPEND LEANC_STATIC_LINKER_FLAGS " ${LEAN_CXX_STDLIB}") +string(APPEND LEANSHARED_LINKER_FLAGS " ${LEAN_CXX_STDLIB}") + +# get rid of unused parts of C++ stdlib +if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-dead_strip") +else() + string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,--gc-sections") +endif() + +if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + string(APPEND LEANC_STATIC_LINKER_FLAGS " -lm") + string(APPEND LEANSHARED_LINKER_FLAGS " -lm") +endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") if(BSYMBOLIC) - set(LEANC_SHARED_LINKER_FLAGS "${LEANC_SHARED_LINKER_FLAGS} -Wl,-Bsymbolic") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -Wl,-Bsymbolic") + string(APPEND LEANC_SHARED_LINKER_FLAGS " -Wl,-Bsymbolic") + string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-Bsymbolic") endif() - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -ftls-model=initial-exec") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -fPIC") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath=\\\$ORIGIN/../lib:\\\$ORIGIN/../lib/lean") + string(APPEND CMAKE_CXX_FLAGS " -fPIC -ftls-model=initial-exec") + string(APPEND LEANC_EXTRA_FLAGS " -fPIC") + string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-rpath=\\$$ORIGIN/..:\\$$ORIGIN") + string(APPEND CMAKE_EXE_LINKER_FLAGS " -Wl,-rpath=\\\$ORIGIN/../lib:\\\$ORIGIN/../lib/lean") elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftls-model=initial-exec") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../lib/lean") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -install_name @rpath/libleanshared.dylib") + string(APPEND CMAKE_CXX_FLAGS " -ftls-model=initial-exec") + string(APPEND LEANSHARED_LINKER_FLAGS " -install_name @rpath/libleanshared.dylib") + string(APPEND CMAKE_EXE_LINKER_FLAGS " -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../lib/lean") endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - set(LEAN_EXTRA_LINKER_FLAGS "${LEAN_LINKER_FLAGS} -ldl") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " -ldl") endif() if(NOT(${CMAKE_SYSTEM_NAME} MATCHES "Windows")) # export symbols for the interpreter (done via `LEAN_EXPORT` for Windows) - set(LEAN_DYN_EXE_LINKER_FLAGS "${LEAN_DYN_EXE_LINKER_FLAGS} -rdynamic") + string(APPEND LEAN_DYN_EXE_LINKER_FLAGS " -rdynamic") # hide all other symbols - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -fvisibility=hidden") + string(APPEND CMAKE_CXX_FLAGS " -fvisibility=hidden -fvisibility-inlines-hidden") + string(APPEND LEANC_EXTRA_FLAGS " -fvisibility=hidden") endif() # On Windows, add bcrypt for random number generation if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") - set(LEANC_STATIC_LINKER_FLAGS "${LEANC_STATIC_LINKER_FLAGS} -lbcrypt") - set(LEANC_SHARED_LINKER_FLAGS "${LEANC_SHARED_LINKER_FLAGS} -lbcrypt") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -lbcrypt") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " -lbcrypt") endif() # Allow `lean` symbols in plugins without linking directly against it. If we linked against the @@ -325,15 +322,14 @@ endif() # are already loaded) and probably fail unless we set up LD_LIBRARY_PATH. if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") # import library created by the `leanshared` target - set(LEANC_SHARED_LINKER_FLAGS "${LEANC_SHARED_LINKER_FLAGS} -lleanshared") + string(APPEND LEANC_SHARED_LINKER_FLAGS " -lleanshared") elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin") - set(LEANC_SHARED_LINKER_FLAGS "${LEANC_SHARED_LINKER_FLAGS} -Wl,-undefined,dynamic_lookup") + string(APPEND LEANC_SHARED_LINKER_FLAGS " -Wl,-undefined,dynamic_lookup") endif() # Linux ignores undefined symbols in shared libraries by default if(MULTI_THREAD AND NOT MSVC AND (NOT ("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin"))) - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pthread") - set(LEANC_EXTRA_FLAGS "${LEANC_EXTRA_FLAGS} -pthread") + string(APPEND LEAN_EXTRA_LINKER_FLAGS " -pthread") endif() # Git HASH @@ -375,9 +371,9 @@ else() set(LEAN_IS_STAGE0 "#define LEAN_IS_STAGE0 0") endif() configure_file("${LEAN_SOURCE_DIR}/config.h.in" "${LEAN_BINARY_DIR}/include/lean/config.h") -install(DIRECTORY ${LEAN_BINARY_DIR}/include/lean DESTINATION include) +install(DIRECTORY ${LEAN_BINARY_DIR}/include/ DESTINATION include) configure_file(${LEAN_SOURCE_DIR}/lean.mk.in ${LEAN_BINARY_DIR}/share/lean/lean.mk) -install(DIRECTORY ${LEAN_BINARY_DIR}/share/lean DESTINATION share) +install(DIRECTORY ${LEAN_BINARY_DIR}/share/ DESTINATION share) include_directories(${LEAN_SOURCE_DIR}) include_directories(${CMAKE_BINARY_DIR}) # version.h etc., "private" headers @@ -386,8 +382,8 @@ include_directories(${CMAKE_BINARY_DIR}/include) # config.h etc., "public" head string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) # These are used in lean.mk (and libleanrt) and passed through by stdlib.make # They are not embedded into `leanc` since they are build profile/machine specific -set(LEANC_OPTS "${CMAKE_CXX_FLAGS_${uppercase_CMAKE_BUILD_TYPE}}") -if(CMAKE_OSX_SYSROOT) +string(APPEND LEANC_OPTS " ${CMAKE_CXX_FLAGS_${uppercase_CMAKE_BUILD_TYPE}}") +if(CMAKE_OSX_SYSROOT AND NOT LEAN_STANDALONE) string(APPEND LEANC_OPTS " ${CMAKE_CXX_SYSROOT_FLAG}${CMAKE_OSX_SYSROOT}") endif() if(CMAKE_OSX_DEPLOYMENT_TARGET) @@ -443,7 +439,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") else() set(LEANSHARED_LINKER_FLAGS "-Wl,--whole-archive -lInit -lStd -lLean -lleancpp -Wl,--no-whole-archive ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a ${LEANSHARED_LINKER_FLAGS}") if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") - set(LEANSHARED_LINKER_FLAGS "${LEANSHARED_LINKER_FLAGS} -Wl,--out-implib,${CMAKE_BINARY_DIR}/lib/lean/libleanshared.dll.a") + string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,--out-implib,${CMAKE_BINARY_DIR}/lib/lean/libleanshared.dll.a") endif() endif() @@ -516,9 +512,9 @@ add_custom_target(clean-stdlib add_custom_target(clean-olean DEPENDS clean-stdlib) -install(DIRECTORY "${CMAKE_BINARY_DIR}/lib/lean" DESTINATION lib) - -install(CODE "execute_process(COMMAND sh -c \"cp ${CMAKE_BINARY_DIR}/lib/*.* \${CMAKE_INSTALL_PREFIX}/lib\")") +install(DIRECTORY "${CMAKE_BINARY_DIR}/lib/" DESTINATION lib + PATTERN src EXCLUDE # symlink + PATTERN temp EXCLUDE) # symlink source into expected installation location for go-to-definition, if file system allows it if(${STAGE} EQUAL 0) @@ -533,6 +529,10 @@ install(DIRECTORY "${CMAKE_SOURCE_DIR}" DESTINATION lib/lean PATTERN "*.md" PATTERN examples EXCLUDE) +if(${STAGE} GREATER 0) + install(FILES "${CMAKE_SOURCE_DIR}/../LICENSE" "${CMAKE_SOURCE_DIR}/../LICENSES" DESTINATION ".") +endif() + file(COPY ${CMAKE_SOURCE_DIR}/include/lean DESTINATION ${CMAKE_BINARY_DIR}/include FILES_MATCHING PATTERN "*.h") @@ -543,7 +543,7 @@ string(TOLOWER ${CMAKE_SYSTEM_NAME} LOWER_SYSTEM_NAME) string(TIMESTAMP COMPILE_DATETIME "%Y%m%d%H%M%S") set(CPACK_PACKAGE_VERSION "${LEAN_VERSION_STRING}.${COMPILE_DATETIME}") if(NOT (${GIT_SHA1} MATCHES "")) - set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}.git${GIT_SHA1}") + string(APPEND CPACK_PACKAGE_VERSION ".git${GIT_SHA1}") endif() set(CPACK_PACKAGE_FILE_NAME "lean-${LEAN_VERSION_STRING}-${LOWER_SYSTEM_NAME}") if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") @@ -551,4 +551,11 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") else() SET(CPACK_GENERATOR ZIP) endif() + +set(LEAN_INSTALL_PREFIX "" CACHE STRING "If set, set CMAKE_INSTALL_PREFIX to this value + version name") +if(LEAN_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "${LEAN_INSTALL_PREFIX}/${CPACK_PACKAGE_FILE_NAME}") +endif() + +# NOTE: modifies `CPACK_PACKAGE_FILE_NAME`(??) include(CPack) diff --git a/stage0/src/Init/Control/Except.lean b/stage0/src/Init/Control/Except.lean index 01554eb2d5..c0a42c1fa4 100644 --- a/stage0/src/Init/Control/Except.lean +++ b/stage0/src/Init/Control/Except.lean @@ -135,6 +135,10 @@ end MonadExcept @[inline] def observing {ε α : Type u} {m : Type u → Type v} [Monad m] [MonadExcept ε m] (x : m α) : m (Except ε α) := tryCatch (do let a ← x; pure (Except.ok a)) (fun ex => pure (Except.error ex)) +def liftExcept [MonadExceptOf ε m] [Pure m] : Except ε α → m α + | Except.ok a => pure a + | Except.error e => throw e + instance (ε : Type u) (m : Type u → Type v) [Monad m] : MonadControl m (ExceptT ε m) where stM := Except ε liftWith f := liftM <| f fun x => x.run diff --git a/stage0/src/Init/Data/String/Basic.lean b/stage0/src/Init/Data/String/Basic.lean index 002d9641b7..8ab05886a8 100644 --- a/stage0/src/Init/Data/String/Basic.lean +++ b/stage0/src/Init/Data/String/Basic.lean @@ -244,11 +244,6 @@ def forward : Iterator → Nat → Iterator def remainingToString : Iterator → String | ⟨s, i⟩ => s.extract i s.bsize -/-- `(isPrefixOfRemaining it₁ it₂)` is `true` iff `it₁.remainingToString` is a prefix - of `it₂.remainingToString`. -/ -def isPrefixOfRemaining : Iterator → Iterator → Bool - | ⟨s₁, i₁⟩, ⟨s₂, i₂⟩ => s₁.extract i₁ s₁.bsize = s₂.extract i₂ (i₂ + (s₁.bsize - i₁)) - def nextn : Iterator → Nat → Iterator | it, 0 => it | it, i+1 => nextn it.next i @@ -320,15 +315,34 @@ def toNat? (s : String) : Option Nat := else none -/-- Return true iff `p` is a prefix of `s` -/ -partial def isPrefixOf (p : String) (s : String) : Bool := - let rec loop (i : Pos) := - if p.atEnd i then true +/-- +Return `true` iff the substring of length `sz` starting at position `off1` in `s1` is equal to that starting at `off2` in `s2.`. +False if either substring of that length does not exist. -/ +partial def substrEq (s1 : String) (off1 : String.Pos) (s2 : String) (off2 : String.Pos) (sz : Nat) : Bool := + off1 + sz ≤ s1.bsize && off2 + sz ≤ s2.bsize && loop off1 off2 (off1 + sz) +where + loop (off1 off2 stop1 : Pos) := + if off1 >= stop1 then true else - let c₁ := p.get i - let c₂ := s.get i - c₁ == c₂ && loop (s.next i) - p.length ≤ s.length && loop 0 + let c₁ := s1.get off1 + let c₂ := s2.get off2 + c₁ == c₂ && loop (off1 + csize c₁) (off2 + csize c₂) stop1 + +/-- Return true iff `p` is a prefix of `s` -/ +def isPrefixOf (p : String) (s : String) : Bool := + substrEq p 0 s 0 p.bsize + +/-- Replace all occurrences of `pattern` in `s` with `replacment`. -/ +partial def replace (s pattern replacement : String) : String := + loop "" 0 0 +where + loop (acc : String) (accStop pos : String.Pos) := + if pos + pattern.bsize > s.bsize then + acc ++ s.extract accStop s.bsize + else if s.substrEq pos pattern 0 pattern.bsize then + loop (acc ++ s.extract accStop pos ++ replacement) (pos + pattern.bsize) (pos + pattern.bsize) + else + loop acc accStop (s.next pos) end String @@ -491,8 +505,7 @@ def toNat? (s : Substring) : Option Nat := none def beq (ss1 ss2 : Substring) : Bool := - -- TODO: should not allocate - ss1.bsize == ss2.bsize && ss1.toString == ss2.toString + ss1.bsize == ss2.bsize && ss1.str.substrEq ss1.startPos ss2.str ss2.startPos ss1.bsize instance hasBeq : BEq Substring := ⟨beq⟩ diff --git a/stage0/src/Init/Notation.lean b/stage0/src/Init/Notation.lean index 8c425b3c8f..46fa8095e3 100644 --- a/stage0/src/Init/Notation.lean +++ b/stage0/src/Init/Notation.lean @@ -113,7 +113,7 @@ macro_rules | `($x > $y) => `(binrel% GT.gt $x $y) macro_rules | `($x >= $y) => `(binrel% GE.ge $x $y) macro_rules | `($x ≥ $y) => `(binrel% GE.ge $x $y) macro_rules | `($x = $y) => `(binrel% Eq $x $y) -macro_rules | `($x == $y) => `(binrel% BEq.beq $x $y) +macro_rules | `($x == $y) => `(binrel_no_prop% BEq.beq $x $y) infixr:35 " /\\ " => And infixr:35 " ∧ " => And diff --git a/stage0/src/Lean/Compiler.lean b/stage0/src/Lean/Compiler.lean index dde2963667..80de3ba550 100644 --- a/stage0/src/Lean/Compiler.lean +++ b/stage0/src/Lean/Compiler.lean @@ -12,3 +12,4 @@ import Lean.Compiler.ImplementedByAttr import Lean.Compiler.NeverExtractAttr import Lean.Compiler.IR import Lean.Compiler.CSimpAttr +import Lean.Compiler.FFI diff --git a/stage0/src/Lean/Compiler/FFI.lean b/stage0/src/Lean/Compiler/FFI.lean new file mode 100644 index 0000000000..d1f4bc5255 --- /dev/null +++ b/stage0/src/Lean/Compiler/FFI.lean @@ -0,0 +1,25 @@ +/- +Copyright (c) 2021 Sebastian Ullrich. All rights reserved. +Released under Apache 2.0 license as described in the file LICENSE. +Authors: Sebastian Ullrich +-/ + +open System + +namespace Lean.Compiler.FFI + +@[extern "lean_get_leanc_extra_flags"] +private constant getLeancExtraFlags : Unit → String + +/-- Return C compiler flags for including Lean's headers. -/ +def getCFlags (leanSysroot : FilePath) : Array String := + #["-I", (leanSysroot / "include").toString] ++ (getLeancExtraFlags ()).trim.splitOn + +@[extern "lean_get_linker_flags"] +private constant getBuiltinLinkerFlags (linkStatic : Bool) : String + +/-- Return linker flags for linking against Lean's libraries. -/ +def getLinkerFlags (leanSysroot : FilePath) (linkStatic := true) (gmp := "-lgmp") : Array String := + #["-L", (leanSysroot / "lib" / "lean").toString] ++ (getBuiltinLinkerFlags linkStatic).trim.splitOn ++ [gmp] + +end Lean.Compiler.FFI diff --git a/stage0/src/Lean/Elab/BuiltinCommand.lean b/stage0/src/Lean/Elab/BuiltinCommand.lean index 8be3d5563d..455920be4c 100644 --- a/stage0/src/Lean/Elab/BuiltinCommand.lean +++ b/stage0/src/Lean/Elab/BuiltinCommand.lean @@ -209,16 +209,18 @@ private def replaceBinderAnnotation (binder : Syntax) : CommandElabM Bool := do open Meta -@[builtinCommandElab Lean.Parser.Command.check] def elabCheck : CommandElab +def elabCheckCore (ignoreStuckTC : Bool) : CommandElab | `(#check%$tk $term) => withoutModifyingEnv $ runTermElabM (some `_check) fun _ => do let e ← Term.elabTerm term none - Term.synthesizeSyntheticMVarsNoPostponing (ignoreStuckTC := true) + Term.synthesizeSyntheticMVarsNoPostponing (ignoreStuckTC := ignoreStuckTC) let (e, _) ← Term.levelMVarToParam (← instantiateMVars e) let type ← inferType e unless e.isSyntheticSorry do logInfoAt tk m!"{e} : {type}" | _ => throwUnsupportedSyntax +@[builtinCommandElab Lean.Parser.Command.check] def elabCheck : CommandElab := elabCheckCore (ignoreStuckTC := true) + @[builtinCommandElab Lean.Parser.Command.reduce] def elabReduce : CommandElab | `(#reduce%$tk $term) => withoutModifyingEnv <| runTermElabM (some `_check) fun _ => do let e ← Term.elabTerm term none @@ -256,7 +258,7 @@ def failIfSucceeds (x : CommandElabM Unit) : CommandElabM Unit := do @[builtinCommandElab «check_failure»] def elabCheckFailure : CommandElab | `(#check_failure $term) => do - failIfSucceeds <| elabCheck (← `(#check $term)) + failIfSucceeds <| elabCheckCore (ignoreStuckTC := false) (← `(#check $term)) | _ => throwUnsupportedSyntax private def mkEvalInstCore (evalClassName : Name) (e : Expr) : MetaM Expr := do diff --git a/stage0/src/Lean/Elab/Command.lean b/stage0/src/Lean/Elab/Command.lean index a87e7a6c90..937dd86887 100644 --- a/stage0/src/Lean/Elab/Command.lean +++ b/stage0/src/Lean/Elab/Command.lean @@ -216,7 +216,7 @@ private def mkInfoTree (elaborator : Name) (stx : Syntax) (trees : Std.Persisten } tree private def elabCommandUsing (s : State) (stx : Syntax) : List (KeyedDeclsAttribute.AttributeEntry CommandElab) → CommandElabM Unit - | [] => throwError "unexpected syntax{indentD stx}" + | [] => withInfoTreeContext (mkInfoTree := mkInfoTree `no_elab stx) <| throwError "unexpected syntax{indentD stx}" | (elabFn::elabFns) => catchInternalId unsupportedSyntaxExceptionId (withInfoTreeContext (mkInfoTree := mkInfoTree elabFn.declName stx) <| elabFn.value stx) @@ -267,13 +267,16 @@ partial def elabCommand (stx : Syntax) : CommandElabM Unit := do trace `Elab.command fun _ => stx; let s ← get match (← liftMacroM <| expandMacroImpl? s.env stx) with - | some (decl, stxNew) => + | some (decl, stxNew?) => withInfoTreeContext (mkInfoTree := mkInfoTree decl stx) do - withMacroExpansion stx stxNew do - elabCommand stxNew + let stxNew ← liftMacroM <| liftExcept stxNew? + withMacroExpansion stx stxNew do + elabCommand stxNew | _ => match commandElabAttribute.getEntries s.env k with - | [] => throwError "elaboration function for '{k}' has not been implemented" + | [] => + withInfoTreeContext (mkInfoTree := mkInfoTree `no_elab stx) <| + throwError "elaboration function for '{k}' has not been implemented" | elabFns => elabCommandUsing s stx elabFns | _ => throwError "unexpected command" diff --git a/stage0/src/Lean/Elab/Frontend.lean b/stage0/src/Lean/Elab/Frontend.lean index c2b85a511e..fbffcb803e 100644 --- a/stage0/src/Lean/Elab/Frontend.lean +++ b/stage0/src/Lean/Elab/Frontend.lean @@ -94,10 +94,10 @@ def getPrintMessageEndPos (opts : Options) : Bool := opts.getBool `printMessageEndPos false @[export lean_run_frontend] -def runFrontend (input : String) (opts : Options) (fileName : String) (mainModuleName : Name) : IO (Environment × Bool) := do +def runFrontend (input : String) (opts : Options) (fileName : String) (mainModuleName : Name) (trustLevel : UInt32 := 0) : IO (Environment × Bool) := do let inputCtx := Parser.mkInputContext input fileName let (header, parserState, messages) ← Parser.parseHeader inputCtx - let (env, messages) ← processHeader header opts messages inputCtx + let (env, messages) ← processHeader header opts messages inputCtx trustLevel let env := env.setMainModule mainModuleName let s ← IO.processCommands inputCtx parserState (Command.mkState env messages opts) for msg in s.commandState.messages.toList do diff --git a/stage0/src/Lean/Elab/StructInst.lean b/stage0/src/Lean/Elab/StructInst.lean index d5a74de568..6b5e83f2c2 100644 --- a/stage0/src/Lean/Elab/StructInst.lean +++ b/stage0/src/Lean/Elab/StructInst.lean @@ -851,7 +851,22 @@ private def elabStructInstAux (stx : Syntax) (expectedType? : Option Expr) (sour let struct ← liftMacroM <| mkStructView stx structName source let struct ← expandStruct struct trace[Elab.struct] "{struct}" - let (r, struct) ← elabStruct struct expectedType? + /- We try to synthesize pending problems with `withSynthesize` combinator before trying to use default values. + This is important in examples such as + ``` + structure MyStruct where + {α : Type u} + {β : Type v} + a : α + b : β + + #check { a := 10, b := true : MyStruct } + ``` + were the `α` will remain "unknown" until the default instance for `OfNat` is used to ensure that `10` is a `Nat`. + + TODO: investigate whether this design decision may have unintended side effects or produce confusing behavior. + -/ + let (r, struct) ← withSynthesize (mayPostpone := true) <| elabStruct struct expectedType? trace[Elab.struct] "before propagate {r}" DefaultFields.propagate struct return r diff --git a/stage0/src/Lean/Elab/Structure.lean b/stage0/src/Lean/Elab/Structure.lean index 50753cebf1..9780aac4ee 100644 --- a/stage0/src/Lean/Elab/Structure.lean +++ b/stage0/src/Lean/Elab/Structure.lean @@ -39,7 +39,8 @@ structure StructFieldView where binderInfo : BinderInfo inferMod : Bool declName : Name - name : Name + name : Name -- The field name as it is going to be registered in the kernel. It does not include macroscopes. + rawName : Name -- Same as `name` but including macroscopes. binders : Syntax type? : Option Syntax value? : Option Syntax @@ -208,7 +209,8 @@ private def expandFields (structStx : Syntax) (structModifiers : Modifiers) (str pure (some optBinderTacticDefault[0][1]) let idents := fieldBinder[2].getArgs idents.foldlM (init := views) fun (views : Array StructFieldView) ident => withRef ident do - let name := ident.getId.eraseMacroScopes + let rawName := ident.getId + let name := rawName.eraseMacroScopes unless name.isAtomic do throwErrorAt ident "invalid field name '{name.eraseMacroScopes}', field names must be atomic" let declName := structDeclName ++ name @@ -221,6 +223,7 @@ private def expandFields (structStx : Syntax) (structModifiers : Modifiers) (str inferMod declName name + rawName binders type? value? @@ -543,13 +546,13 @@ where match type?, value? with | none, none => throwError "invalid field, type expected" | some type, _ => - withLocalDecl view.name view.binderInfo type fun fieldFVar => + withLocalDecl view.rawName view.binderInfo type fun fieldFVar => let infos := infos.push { name := view.name, declName := view.declName, fvar := fieldFVar, value? := value?, kind := StructFieldKind.newField, inferMod := view.inferMod } go (i+1) defaultValsOverridden infos | none, some value => let type ← inferType value - withLocalDecl view.name view.binderInfo type fun fieldFVar => + withLocalDecl view.rawName view.binderInfo type fun fieldFVar => let infos := infos.push { name := view.name, declName := view.declName, fvar := fieldFVar, value? := value, kind := StructFieldKind.newField, inferMod := view.inferMod } go (i+1) defaultValsOverridden infos diff --git a/stage0/src/Lean/Elab/Tactic/Simp.lean b/stage0/src/Lean/Elab/Tactic/Simp.lean index 280f5eb017..099d9d42f8 100644 --- a/stage0/src/Lean/Elab/Tactic/Simp.lean +++ b/stage0/src/Lean/Elab/Tactic/Simp.lean @@ -53,7 +53,7 @@ inductive Simp.DischargeWrapper where | default | custom (ref : IO.Ref Term.State) (discharge : Simp.Discharge) -def Simp.DischargeWrapper.with (w : Simp.DischargeWrapper) (x : Option Simp.Discharge → MetaM α) : TacticM α := do +def Simp.DischargeWrapper.with (w : Simp.DischargeWrapper) (x : Option Simp.Discharge → TacticM α) : TacticM α := do match w with | default => x none | custom ref d => @@ -162,8 +162,6 @@ where else Term.elabCDotFunctionAlias? simpArgTerm -abbrev FVarIdToLemmaId := FVarIdMap Name - -- TODO: move? private def getPropHyps : MetaM (Array FVarId) := do let mut result := #[] @@ -215,28 +213,47 @@ def mkSimpContext (stx : Syntax) (eraseLocal : Bool) (ctx := false) (ignoreStarA ctx := { ctx with simpLemmas } return { ctx, fvarIdToLemmaId, dischargeWrapper } +/-- +`simpLocation ctx discharge? varIdToLemmaId loc` +runs the simplifier at locations specified by `loc`, +using the simp lemmas collected in `ctx` +optionally running a discharger specified in `discharge?` on generated subgoals. +(Local hypotheses which have been added to the simp lemmas must be recorded in +`fvarIdToLemmaId`.) + +Its primary use is as the implementation of the +`simp [...] at ...` and `simp only [...] at ...` syntaxes, +but can also be used by other tactics when a `Syntax` is not available. + +For many tactics other than the simplifier, +one should use the `withLocation` tactic combinator +when working with a `location`. +-/ +def simpLocation (ctx : Simp.Context) (discharge? : Option Simp.Discharge := none) (fvarIdToLemmaId : FVarIdToLemmaId := {}) (loc : Location) : TacticM Unit := do + match loc with + | Location.targets hUserNames simplifyTarget => + withMainContext do + let fvarIds ← hUserNames.mapM fun hUserName => return (← getLocalDeclFromUserName hUserName).fvarId + go fvarIds simplifyTarget fvarIdToLemmaId + | Location.wildcard => + withMainContext do + go (← getNondepPropHyps (← getMainGoal)) (simplifyTarget := true) fvarIdToLemmaId +where + go (fvarIdsToSimp : Array FVarId) (simplifyTarget : Bool) (fvarIdToLemmaId : Lean.Meta.FVarIdToLemmaId) : TacticM Unit := do + let mvarId ← getMainGoal + let result? ← simpGoal mvarId ctx (simplifyTarget := simplifyTarget) (discharge? := discharge?) (fvarIdsToSimp := fvarIdsToSimp) (fvarIdToLemmaId := fvarIdToLemmaId) + match result? with + | none => replaceMainGoal [] + | some (_, mvarId) => replaceMainGoal [mvarId] + /- "simp " (config)? (discharger)? ("only ")? ("[" simpLemma,* "]")? (location)? -/ @[builtinTactic Lean.Parser.Tactic.simp] def evalSimp : Tactic := fun stx => do let { ctx, fvarIdToLemmaId, dischargeWrapper } ← withMainContext <| mkSimpContext stx (eraseLocal := false) -- trace[Meta.debug] "Lemmas {← toMessageData ctx.simpLemmas.post}" - let loc := expandOptLocation stx[5] - match loc with - | Location.targets hUserNames simplifyTarget => - withMainContext do - let fvarIds ← hUserNames.mapM fun hUserName => return (← getLocalDeclFromUserName hUserName).fvarId - go ctx dischargeWrapper fvarIds simplifyTarget fvarIdToLemmaId - | Location.wildcard => - withMainContext do - go ctx dischargeWrapper (← getNondepPropHyps (← getMainGoal)) (simplifyTarget := true) fvarIdToLemmaId -where - go (ctx : Simp.Context) (dischargeWrapper : Simp.DischargeWrapper) (fvarIdsToSimp : Array FVarId) (simplifyTarget : Bool) (fvarIdToLemmaId : FVarIdToLemmaId) : TacticM Unit := do - let mvarId ← getMainGoal - let result? ← dischargeWrapper.with fun discharge? => return (← simpGoal mvarId ctx (simplifyTarget := simplifyTarget) (discharge? := discharge?) (fvarIdsToSimp := fvarIdsToSimp) (fvarIdToLemmaId := fvarIdToLemmaId)).map (·.2) - match result? with - | none => replaceMainGoal [] - | some mvarId => replaceMainGoal [mvarId] + dischargeWrapper.with fun discharge? => + simpLocation ctx discharge? fvarIdToLemmaId (expandOptLocation stx[5]) @[builtinTactic Lean.Parser.Tactic.simpAll] def evalSimpAll : Tactic := fun stx => do let { ctx, .. } ← mkSimpContext stx (eraseLocal := true) (ctx := true) (ignoreStarArg := true) diff --git a/stage0/src/Lean/Elab/Tactic/Split.lean b/stage0/src/Lean/Elab/Tactic/Split.lean index 79ab90406a..79b120ec6f 100644 --- a/stage0/src/Lean/Elab/Tactic/Split.lean +++ b/stage0/src/Lean/Elab/Tactic/Split.lean @@ -12,7 +12,7 @@ open Meta @[builtinTactic Lean.Parser.Tactic.split] def evalSplit : Tactic := fun stx => do unless stx[1].isNone do - throwError "'split' tatic, term to split is not supported yet" + throwError "'split' tactic, term to split is not supported yet" liftMetaTactic fun mvarId => do let loc := expandOptLocation stx[2] match loc with diff --git a/stage0/src/Lean/Elab/Term.lean b/stage0/src/Lean/Elab/Term.lean index e97ad934a0..afce91fdd3 100644 --- a/stage0/src/Lean/Elab/Term.lean +++ b/stage0/src/Lean/Elab/Term.lean @@ -1248,7 +1248,7 @@ private partial def elabTermAux (expectedType? : Option Expr) (catchExPostpone : withNestedTraces do let env ← getEnv match (← liftMacroM (expandMacroImpl? env stx)) with - | some (decl, stxNew) => + | some (decl, Except.ok stxNew) => withInfoContext' (mkInfo := mkTermInfo decl (expectedType? := expectedType?) stx) <| withMacroExpansion stx stxNew <| withRef stxNew <| diff --git a/stage0/src/Lean/Elab/Util.lean b/stage0/src/Lean/Elab/Util.lean index d3be2bbbda..04b1e3737f 100644 --- a/stage0/src/Lean/Elab/Util.lean +++ b/stage0/src/Lean/Elab/Util.lean @@ -115,14 +115,14 @@ builtin_initialize macroAttribute : KeyedDeclsAttribute Macro ← mkMacroAttribu Try to expand macro at syntax tree root and return macro declaration name and new syntax if successful. Return none if all macros threw `Macro.Exception.unsupportedSyntax`. -/ -def expandMacroImpl? (env : Environment) : Syntax → MacroM (Option (Name × Syntax)) := fun stx => do +def expandMacroImpl? (env : Environment) : Syntax → MacroM (Option (Name × Except Macro.Exception Syntax)) := fun stx => do for e in macroAttribute.getEntries env stx.getKind do try let stx' ← withFreshMacroScope (e.value stx) - return (e.declName, stx') + return (e.declName, Except.ok stx') catch | Macro.Exception.unsupportedSyntax => pure () - | ex => throw ex + | ex => return (e.declName, Except.error ex) return none class MonadMacroAdapter (m : Type → Type) where @@ -144,8 +144,8 @@ def liftMacroM {α} {m : Type → Type} [Monad m] [MonadMacroAdapter m] [MonadEn -- TODO: record recursive expansions in info tree? expandMacro? := fun stx => do match (← expandMacroImpl? env stx) with - | some (_, stx) => some stx - | none => none + | some (_, Except.ok stx) => some stx + | _ => none hasDecl := fun declName => return env.contains declName getCurrNamespace := return currNamespace resolveNamespace? := fun n => return ResolveName.resolveNamespace? env currNamespace openDecls n diff --git a/stage0/src/Lean/Meta/ExprDefEq.lean b/stage0/src/Lean/Meta/ExprDefEq.lean index a95106244d..aaa6f36b1d 100644 --- a/stage0/src/Lean/Meta/ExprDefEq.lean +++ b/stage0/src/Lean/Meta/ExprDefEq.lean @@ -16,6 +16,35 @@ import Lean.Meta.UnificationHint namespace Lean.Meta +/-- + Return true `b` is of the form `mk a.1 ... a.n`. +-/ +private def isDefEqEtaStruct (a b : Expr) : MetaM Bool := + matchConstCtor b.getAppFn (fun _ => return false) fun ctorVal _ => do + if ctorVal.numParams + ctorVal.numFields != b.getAppNumArgs then + trace[Meta.isDefEq.eta.struct] "failed, insufficient number of arguments at{indentExpr b}" + return false + else + let inductVal ← getConstInfoInduct ctorVal.induct + if inductVal.nctors != 1 then + trace[Meta.isDefEq.eta.struct] "failed, type is not a structure{indentExpr b}" + return false + else checkpointDefEq do + let args := b.getAppArgs + for i in [ctorVal.numParams : args.size] do + match (← whnf args[i]) with + | Expr.proj _ j e _ => + unless ctorVal.numParams + j == i do + trace[Meta.isDefEq.eta.struct] "failed, unexpect arg #{i}, unexpected projection #{j}, at{indentExpr b}" + return false + unless (← isDefEq e a) do + trace[Meta.isDefEq.eta.struct] "failed, unexpect arg #{i}, argument{e}\nis not defeq to{indentExpr a}" + return false + | e => + trace[Meta.isDefEq.eta.struct] "failed, projection expected{indentExpr e}" + return false + return true + /-- Try to solve `a := (fun x => t) =?= b` by eta-expanding `b`. @@ -35,7 +64,7 @@ private def isDefEqEta (a b : Expr) : MetaM Bool := do checkpointDefEq <| Meta.isExprDefEqAux a b' | _ => pure false else - pure false + return false /-- Support for `Lean.reduceBool` and `Lean.reduceNat` -/ def isDefEqNative (s t : Expr) : MetaM LBool := do @@ -1436,6 +1465,8 @@ private def isDefEqApp (t s : Expr) : MetaM Bool := do private def isExprDefEqExpensive (t : Expr) (s : Expr) : MetaM Bool := do if (← (isDefEqEta t s <||> isDefEqEta s t)) then pure true else + -- TODO: investigate whether this is the place for putting this check + if (← (isDefEqEtaStruct t s <||> isDefEqEtaStruct s t)) then pure true else if (← isDefEqProj t s) then pure true else whenUndefDo (isDefEqNative t s) do whenUndefDo (isDefEqNat t s) do diff --git a/stage0/src/Lean/Meta/Tactic/Simp/Rewrite.lean b/stage0/src/Lean/Meta/Tactic/Simp/Rewrite.lean index b64f555520..34aae00e9c 100644 --- a/stage0/src/Lean/Meta/Tactic/Simp/Rewrite.lean +++ b/stage0/src/Lean/Meta/Tactic/Simp/Rewrite.lean @@ -33,10 +33,10 @@ where synthesizeInstance (x type : Expr) : SimpM Bool := do match (← trySynthInstance type) with | LOption.some val => - if (← isDefEq x val) then + if (← withReducibleAndInstances <| isDefEq x val) then return true else - trace[Meta.Tactic.simp.discharge] "{lemmaName}, failed to assign instance{indentExpr type}" + trace[Meta.Tactic.simp.discharge] "{lemmaName}, failed to assign instance{indentExpr type}\nsythesized value{indentExpr val}\nis not definitionally equal to{indentExpr x}" return false | _ => trace[Meta.Tactic.simp.discharge] "{lemmaName}, failed to synthesize instance{indentExpr type}" @@ -117,7 +117,7 @@ def rewrite (e : Expr) (s : DiscrTree SimpLemma) (erased : Std.PHashSet Name) (d trace[Debug.Meta.Tactic.simp] "no theorems found for {tag}-rewriting {e}" return { expr := e } else - let candidates := candidates.insertionSort fun e₁ e₂ => e₁.1.priority < e₂.1.priority + let candidates := candidates.insertionSort fun e₁ e₂ => e₁.1.priority > e₂.1.priority for (lemma, numExtraArgs) in candidates do unless inErasedSet lemma do if let some result ← tryLemmaWithExtraArgs? e lemma numExtraArgs discharge? then diff --git a/stage0/src/Lean/Parser/Command.lean b/stage0/src/Lean/Parser/Command.lean index 8dbcc7c93f..6d993635bc 100644 --- a/stage0/src/Lean/Parser/Command.lean +++ b/stage0/src/Lean/Parser/Command.lean @@ -39,7 +39,7 @@ def terminationSuffix := optional terminationBy >> optional decreasingBy def moduleDoc := leading_parser ppDedent $ "/-!" >> commentBody >> ppLine def namedPrio := leading_parser (atomic ("(" >> nonReservedSymbol "priority") >> " := " >> priorityParser >> ")") -def optNamedPrio := optional namedPrio +def optNamedPrio := optional (ppSpace >> namedPrio) def «private» := leading_parser "private " def «protected» := leading_parser "protected " @@ -60,9 +60,11 @@ def optDefDeriving := optional (atomic ("deriving " >> notSymbol "instance") > def «def» := leading_parser "def " >> declId >> optDeclSig >> declVal >> optDefDeriving >> terminationSuffix def «theorem» := leading_parser "theorem " >> declId >> declSig >> declVal >> terminationSuffix def «constant» := leading_parser "constant " >> declId >> declSig >> optional declValSimple -def «instance» := leading_parser Term.attrKind >> "instance " >> optNamedPrio >> optional declId >> declSig >> declVal >> terminationSuffix +/- As `declSig` starts with a space, "instance" does not need a trailing space if we put `ppSpace` in the optional fragments. -/ +def «instance» := leading_parser Term.attrKind >> "instance" >> optNamedPrio >> optional (ppSpace >> declId) >> declSig >> declVal >> terminationSuffix def «axiom» := leading_parser "axiom " >> declId >> declSig -def «example» := leading_parser "example " >> declSig >> declVal +/- As `declSig` starts with a space, "example" does not need a trailing space. -/ +def «example» := leading_parser "example" >> declSig >> declVal def inferMod := leading_parser atomic (symbol "{" >> "}") def ctor := leading_parser "\n| " >> declModifiers true >> ident >> optional inferMod >> optDeclSig def derivingClasses := sepBy1 (group (ident >> optional (" with " >> Term.structInst))) ", " @@ -79,7 +81,7 @@ def structureTk := leading_parser "structure " def classTk := leading_parser "class " def «extends» := leading_parser " extends " >> sepBy1 termParser ", " def «structure» := leading_parser - (structureTk <|> classTk) >> declId >> many Term.bracketedBinder >> optional «extends» >> Term.optType + (structureTk <|> classTk) >> declId >> many (ppSpace >> Term.bracketedBinder) >> optional «extends» >> Term.optType >> optional ((symbol " := " <|> " where ") >> optional structCtor >> structFields) >> optDeriving @[builtinCommandParser] def declaration := leading_parser @@ -88,7 +90,7 @@ declModifiers false >> («abbrev» <|> «def» <|> «theorem» <|> «constant» @[builtinCommandParser] def «section» := leading_parser "section " >> optional ident @[builtinCommandParser] def «namespace» := leading_parser "namespace " >> ident @[builtinCommandParser] def «end» := leading_parser "end " >> optional ident -@[builtinCommandParser] def «variable» := leading_parser "variable" >> many1 Term.bracketedBinder +@[builtinCommandParser] def «variable» := leading_parser "variable" >> many1 (ppSpace >> Term.bracketedBinder) @[builtinCommandParser] def «universe» := leading_parser "universe " >> many1 ident @[builtinCommandParser] def check := leading_parser "#check " >> termParser @[builtinCommandParser] def check_failure := leading_parser "#check_failure " >> termParser -- Like `#check`, but succeeds only if term does not type check diff --git a/stage0/src/Lean/PrettyPrinter/Delaborator/Builtins.lean b/stage0/src/Lean/PrettyPrinter/Delaborator/Builtins.lean index cb39f4c7e4..7d5fcda18b 100644 --- a/stage0/src/Lean/PrettyPrinter/Delaborator/Builtins.lean +++ b/stage0/src/Lean/PrettyPrinter/Delaborator/Builtins.lean @@ -60,8 +60,11 @@ def delabSort : Delab := do def unresolveNameGlobal (n₀ : Name) : DelabM Name := do if n₀.hasMacroScopes then return n₀ - let mut initialNames := #[] - if !(← getPPOption getPPFullNames) then initialNames := initialNames ++ getRevAliases (← getEnv) n₀ + if (← getPPOption getPPFullNames) then + match (← resolveGlobalName n₀) with + | [(potentialMatch, _)] => if potentialMatch == n₀ then return n₀ else return rootNamespace ++ n₀ + | _ => return n₀ -- if can't resolve, return the original + let mut initialNames := (getRevAliases (← getEnv) n₀).toArray initialNames := initialNames.push (rootNamespace ++ n₀) for initialName in initialNames do match (← unresolveNameCore initialName) with diff --git a/stage0/src/Lean/Server/AsyncList.lean b/stage0/src/Lean/Server/AsyncList.lean index 6b62d00c4e..c45d696e0d 100644 --- a/stage0/src/Lean/Server/AsyncList.lean +++ b/stage0/src/Lean/Server/AsyncList.lean @@ -71,7 +71,7 @@ partial def getAll : AsyncList ε α → List α × Option ε | Except.error e => ⟨[], some e⟩ /-- Spawns a `Task` waiting on the prefix of elements for which `p` is true. -/ -partial def waitAll [Coe Error ε] (p : α → Bool := fun _ => true) : AsyncList ε α → IO (Task (List α × Option ε)) +partial def waitAll [Coe Error ε] (p : α → Bool := fun _ => true) : AsyncList ε α → BaseIO (Task (List α × Option ε)) | cons hd tl => do if p hd then let t ← tl.waitAll p @@ -80,7 +80,7 @@ partial def waitAll [Coe Error ε] (p : α → Bool := fun _ => true) : AsyncLis return Task.pure ⟨[hd], none⟩ | nil => return Task.pure ⟨[], none⟩ | asyncTail tl => do - let t : Task (Except IO.Error (List α × Option ε)) ← IO.bindTask tl fun + let t : Task (Except IO.Error (List α × Option ε)) ← BaseIO.bindTask tl fun | Except.ok tl => Task.map Except.ok <$> tl.waitAll p | Except.error e => return Task.pure <| Except.ok ⟨[], some e⟩ t.map fun @@ -90,20 +90,20 @@ partial def waitAll [Coe Error ε] (p : α → Bool := fun _ => true) : AsyncLis /-- Spawns a `Task` acting like `List.find?` but which will wait for tail evalution when necessary to traverse the list. If the tail terminates before a matching element is found, the task throws the terminating value. -/ -partial def waitFind? (p : α → Bool) [Coe Error ε] : AsyncList ε α → IO (Task $ Except ε $ Option α) +partial def waitFind? (p : α → Bool) [Coe Error ε] : AsyncList ε α → BaseIO (Task $ Except ε $ Option α) | nil => return Task.pure <| Except.ok none | cons hd tl => do if p hd then return Task.pure <| Except.ok <| some hd else tl.waitFind? p | asyncTail tl => do - let t ← IO.bindTask tl fun + let t ← BaseIO.bindTask tl fun | Except.ok tl => Task.map Except.ok <$> tl.waitFind? p | Except.error e => return Task.pure <| Except.ok <| Except.error e coeErr t /-- Extends the `finishedPrefix` as far as possible. If computation was ongoing and has finished, also returns the terminating value. -/ -partial def updateFinishedPrefix : AsyncList ε α → IO (AsyncList ε α × Option ε) +partial def updateFinishedPrefix : AsyncList ε α → BaseIO (AsyncList ε α × Option ε) | cons hd tl => do let ⟨tl, e?⟩ ← tl.updateFinishedPrefix pure ⟨cons hd tl, e?⟩ diff --git a/stage0/src/Lean/Server/FileWorker.lean b/stage0/src/Lean/Server/FileWorker.lean index 4d086cf813..c86ad9d8c6 100644 --- a/stage0/src/Lean/Server/FileWorker.lean +++ b/stage0/src/Lean/Server/FileWorker.lean @@ -148,10 +148,7 @@ section Initialization let stdout := stdout.split (· == '\n') |>.getLast! let Except.ok (paths : LeanPaths) ← pure (Json.parse stdout >>= fromJson?) | throwServerError s!"invalid output from `{cmdStr}`:\n{stdout}\nstderr:\n{stderr}" - let sp ← getBuiltinSearchPath - let sp ← addSearchPathFromEnv sp - let sp := paths.oleanPath ++ sp - searchPathRef.set sp + initSearchPath (← getBuildDir) paths.oleanPath paths.srcPath.mapM realPathNormalized | 2 => pure [] -- no lakefile.lean | _ => throwServerError s!"`{cmdStr}` failed:\n{stdout}\nstderr:\n{stderr}" @@ -366,7 +363,7 @@ section MessageHandling srcSearchPath := ctx.srcSearchPath doc := st.doc hLog := ctx.hLog } - let t? ← (ExceptT.run <| handleLspRequest method params rc : IO _) + let t? ← EIO.toIO' <| handleLspRequest method params rc let t₁ ← match t? with | Except.error e => IO.asTask do diff --git a/stage0/src/Lean/Server/FileWorker/RequestHandling.lean b/stage0/src/Lean/Server/FileWorker/RequestHandling.lean index 965b357c06..904e21eb7f 100644 --- a/stage0/src/Lean/Server/FileWorker/RequestHandling.lean +++ b/stage0/src/Lean/Server/FileWorker/RequestHandling.lean @@ -69,8 +69,12 @@ partial def handleDefinition (kind : GoToKind) (p : TextDocumentPositionParams) let mod? ← findModuleOf? n let modUri? ← match mod? with | some modName => - let modFname? ← rc.srcSearchPath.findWithExt "lean" modName - pure <| modFname?.map toFileUri + let some modFname ← rc.srcSearchPath.findWithExt "lean" modName + | pure none + -- resolve symlinks (such as `src` in the build dir) so that files are opened + -- in the right folder + let modFname ← IO.FS.realPath modFname + pure <| some <| toFileUri modFname | none => pure <| some doc.meta.uri let ranges? ← findDeclarationRanges? n @@ -221,7 +225,7 @@ partial def handleDocumentSymbol (p : DocumentSymbolParams) | some ElabTaskError.aborted => throw RequestError.fileChanged | some (ElabTaskError.ioError e) => - throwThe IO.Error e + throw (e : RequestError) | _ => () let lastSnap := cmdSnaps.finishedPrefix.getLastD doc.headerSnap @@ -320,14 +324,20 @@ where stx.getArgs.forM go highlightId (stx : Syntax) : ReaderT SemanticTokensContext (StateT SemanticTokensState RequestM) _ := do if let some range := stx.getRange? then + let mut lastPos := range.start for ti in (← read).snap.infoTree.deepestNodes (fun | _, i@(Elab.Info.ofTermInfo ti), _ => match i.pos? with | some ipos => if range.contains ipos then some ti else none | _ => none | _, _, _ => none) do - match ti.expr with - | Expr.fvar .. => addToken ti.stx SemanticTokenType.variable - | _ => if ti.stx.getPos?.get! > range.start then addToken ti.stx SemanticTokenType.property + if let Expr.fvar .. := ti.expr then + addToken ti.stx SemanticTokenType.variable + else if ti.stx.getPos?.get! > lastPos then + -- any info after the start position: must be projection notation + addToken ti.stx SemanticTokenType.property + -- avoid reporting same position twice; the info node can occur multiple times if + -- e.g. the term is elaborated multiple times + lastPos := ti.stx.getPos?.get! highlightKeyword stx := do if let Syntax.atom info val := stx then if val.bsize > 0 && val[0].isAlpha then @@ -371,7 +381,7 @@ partial def handleWaitForDiagnostics (p : WaitForDiagnosticsParams) waitLoop let t ← RequestM.asTask waitLoop RequestM.bindTask t fun doc? => do - let doc ← doc? + let doc ← liftExcept doc? let t₁ ← doc.cmdSnaps.waitAll return t₁.map fun _ => pure WaitForDiagnostics.mk diff --git a/stage0/src/Lean/Server/InfoUtils.lean b/stage0/src/Lean/Server/InfoUtils.lean index 8a809a2c2e..a1ff9a9b01 100644 --- a/stage0/src/Lean/Server/InfoUtils.lean +++ b/stage0/src/Lean/Server/InfoUtils.lean @@ -6,6 +6,7 @@ Authors: Wojciech Nawrocki -/ import Lean.DocString import Lean.Elab.InfoTree +import Lean.PrettyPrinter.Delaborator.Options import Lean.Util.Sorry protected structure String.Range where @@ -164,7 +165,8 @@ where match i with | Info.ofTermInfo ti => let tp ← Meta.inferType ti.expr - let eFmt ← Meta.ppExpr ti.expr + let eFmt ← Lean.withOptions (Lean.pp.fullNames.set . true) do + Meta.ppExpr ti.expr let tpFmt ← Meta.ppExpr tp -- try not to show too scary internals let fmt := if isAtomicFormat eFmt then f!"{eFmt} : {tpFmt}" else f!"{tpFmt}" diff --git a/stage0/src/Lean/Server/Requests.lean b/stage0/src/Lean/Server/Requests.lean index f95deaf452..b0ea8fe58b 100644 --- a/stage0/src/Lean/Server/Requests.lean +++ b/stage0/src/Lean/Server/Requests.lean @@ -62,10 +62,13 @@ structure RequestContext where abbrev RequestTask α := Task (Except RequestError α) /-- Workers execute request handlers in this monad. -/ -abbrev RequestM := ReaderT RequestContext <| ExceptT RequestError IO +abbrev RequestM := ReaderT RequestContext <| EIO RequestError instance : Inhabited (RequestM α) := - ⟨throwThe IO.Error "executing Inhabited instance?!"⟩ + ⟨throw ("executing Inhabited instance?!" : RequestError)⟩ + +instance : MonadLift IO RequestM where + monadLift x := x.toEIO fun e => (e : RequestError) namespace RequestM open FileWorker @@ -75,25 +78,15 @@ def readDoc : RequestM EditableDocument := fun rc => rc.doc def asTask (t : RequestM α) : RequestM (RequestTask α) := fun rc => do - let t ← IO.asTask <| t rc - return t.map fun - | Except.error e => throwThe RequestError e - | Except.ok v => v + let t ← EIO.asTask <| t rc + return t.map liftExcept def mapTask (t : Task α) (f : α → RequestM β) : RequestM (RequestTask β) := fun rc => do - let t ← (IO.mapTask · t) fun a => f a rc - return t.map fun - | Except.error e => throwThe RequestError e - | Except.ok v => v + let t ← EIO.mapTask (f · rc) t + return t.map liftExcept def bindTask (t : Task α) (f : α → RequestM (RequestTask β)) : RequestM (RequestTask β) := fun rc => do - let t ← IO.bindTask t fun a => do - match (← f a rc) with - | Except.error e => return Task.pure <| Except.ok <| Except.error e - | Except.ok t => return t.map Except.ok - return t.map fun - | Except.error e => throwThe RequestError e - | Except.ok v => v + EIO.bindTask t (f · rc) /-- Create a task which waits for the first snapshot matching `p`, handles various errors, and if a matching snapshot was found executes `x` with it. If not found, the task executes @@ -110,7 +103,7 @@ def withWaitFindSnap (doc : EditableDocument) (p : Snapshot → Bool) | Except.error FileWorker.ElabTaskError.aborted => throwThe RequestError RequestError.fileChanged | Except.error (FileWorker.ElabTaskError.ioError e) => - throwThe IO.Error e + throw (e : RequestError) | Except.error FileWorker.ElabTaskError.eof => notFoundX | Except.ok none => notFoundX | Except.ok (some snap) => x snap @@ -151,7 +144,7 @@ def registerLspRequestHandler (method : String) let fileSource := fun j => parseRequestParams paramType j |>.map Lsp.fileSource let handle := fun j => do - let params ← parseRequestParams paramType j + let params ← liftExcept <| parseRequestParams paramType j let t ← handler params t.map <| Except.map ToJson.toJson @@ -167,7 +160,7 @@ def routeLspRequest (method : String) (params : Json) : IO (Except RequestError def handleLspRequest (method : String) (params : Json) : RequestM (RequestTask Json) := do match (← lookupLspRequestHandler method) with - | none => throwThe IO.Error <| IO.userError s!"internal server error: request '{method}' routed through watchdog but unknown in worker; are both using the same plugins?" + | none => throw (s!"internal server error: request '{method}' routed through watchdog but unknown in worker; are both using the same plugins?" : RequestError) | some rh => rh.handle params end HandlerTable diff --git a/stage0/src/Lean/Server/Rpc/RequestHandling.lean b/stage0/src/Lean/Server/Rpc/RequestHandling.lean index bf78c0aa7f..61269d33d6 100644 --- a/stage0/src/Lean/Server/Rpc/RequestHandling.lean +++ b/stage0/src/Lean/Server/Rpc/RequestHandling.lean @@ -47,7 +47,7 @@ def registerRpcCallHandler (method : Name) let sesh ← seshRef.get let t ← RequestM.asTask do - let paramsLsp ← parseRequestParams paramLspType j + let paramsLsp ← liftExcept <| parseRequestParams paramLspType j let act := rpcDecode (α := paramType) (β := paramLspType) (m := StateM FileWorker.RpcSession) paramsLsp match act.run' sesh with | Except.ok v => return v diff --git a/stage0/src/Lean/Server/Snapshots.lean b/stage0/src/Lean/Server/Snapshots.lean index 01bde3697e..8a65d84e80 100644 --- a/stage0/src/Lean/Server/Snapshots.lean +++ b/stage0/src/Lean/Server/Snapshots.lean @@ -66,9 +66,6 @@ def reparseHeader (contents : String) (header : Snapshot) (opts : Options := {}) let (newStx, newMpState, _) ← Parser.parseHeader inputCtx pure { header with stx := newStx, mpState := newMpState } -private def ioErrorFromEmpty (ex : Empty) : IO.Error := - nomatch ex - /-- Parses the next command occurring after the given snapshot without elaborating it. -/ def parseNextCmd (contents : String) (snap : Snapshot) : IO Syntax := do @@ -126,11 +123,10 @@ def compileNextCmd (text : FileMap) (snap : Snapshot) : IO Snapshot := do fileName := inputCtx.fileName fileMap := inputCtx.fileMap } - let (output, _) ← IO.FS.withIsolatedStreams do - EIO.toIO ioErrorFromEmpty do - Elab.Command.catchExceptions - (getResetInfoTrees *> Elab.Command.elabCommandTopLevel cmdStx) - cmdCtx cmdStateRef + let (output, _) ← IO.FS.withIsolatedStreams <| liftM (m := BaseIO) do + Elab.Command.catchExceptions + (getResetInfoTrees *> Elab.Command.elabCommandTopLevel cmdStx) + cmdCtx cmdStateRef let mut postCmdState ← cmdStateRef.get if !output.isEmpty then postCmdState := { diff --git a/stage0/src/Lean/Util/Path.lean b/stage0/src/Lean/Util/Path.lean index 89400a8a51..40c9137ceb 100644 --- a/stage0/src/Lean/Util/Path.lean +++ b/stage0/src/Lean/Util/Path.lean @@ -49,15 +49,15 @@ def getBuildDir : IO FilePath := do return (← IO.appDir).parent |>.get! @[export lean_get_libdir] -def getLibDir : IO FilePath := do - let mut buildDir ← getBuildDir +def getLibDir (leanSysroot : FilePath) : IO FilePath := do + let mut buildDir := leanSysroot -- use stage1 stdlib with stage0 executable (which should never be distributed outside of the build directory) if isStage0 () then buildDir := buildDir / ".." / "stage1" buildDir / "lib" / "lean" -def getBuiltinSearchPath : IO SearchPath := - return [← getLibDir] +def getBuiltinSearchPath (leanSysroot : FilePath) : IO SearchPath := + return [← getLibDir leanSysroot] def addSearchPathFromEnv (sp : SearchPath) : IO SearchPath := do let val ← IO.getEnv "LEAN_PATH" @@ -65,14 +65,17 @@ def addSearchPathFromEnv (sp : SearchPath) : IO SearchPath := do | none => pure sp | some val => pure <| SearchPath.parse val ++ sp +/-- +Initialize Lean's search path given Lean's system root and an initial search path. +The system root can be obtained via `getBuildDir` (for internal use) or +`findSysroot?` (for external users). -/ +def initSearchPath (leanSysroot : FilePath) (sp : SearchPath := ∅) : IO Unit := do + let sp := sp ++ (← addSearchPathFromEnv (← getBuiltinSearchPath leanSysroot)) + searchPathRef.set sp + @[export lean_init_search_path] -def initSearchPath (path : Option String := none) : IO Unit := - match path with - | some path => searchPathRef.set <| SearchPath.parse path - | none => do - let sp ← getBuiltinSearchPath - let sp ← addSearchPathFromEnv sp - searchPathRef.set sp +private def initSearchPathInternal : IO Unit := do + initSearchPath (← getBuildDir) partial def findOLean (mod : Name) : IO FilePath := do let sp ← searchPathRef.get @@ -110,4 +113,22 @@ def moduleNameOfFileName (fname : FilePath) (rootDir : Option FilePath) : IO Nam let modName := modNameStr.components.foldl Name.mkStr Name.anonymous pure modName +/-- + Find the system root of the given `lean` command + by calling `lean --print-prefix` and returning the path it prints. + Defaults to trying the `lean` in `PATH`. + If set, the `LEAN_SYSROOT` environment variable takes precedence. + Note that the called `lean` binary might not be part of the system root, + e.g. in the case of `elan`'s proxy binary. + Users internal to Lean should use `Lean.getBuildDir` instead. +-/ +def findSysroot? (lean := "lean") : IO FilePath := do + if let some root ← IO.getEnv "LEAN_SYSROOT" then + return root + let out ← IO.Process.run { + cmd := lean + args := #["--print-prefix"] + } + out.trim + end Lean diff --git a/stage0/src/Leanc.lean b/stage0/src/Leanc.lean index 16c2b84bcb..61f1a69358 100644 --- a/stage0/src/Leanc.lean +++ b/stage0/src/Leanc.lean @@ -1,3 +1,7 @@ +import Lean.Compiler.FFI + +open Lean.Compiler.FFI + def main (args : List String) : IO UInt32 := do if args.isEmpty then IO.println "Lean C compiler @@ -7,7 +11,6 @@ which can be overridden with the environment variable `LEAN_CC`. All parameters as-is to the wrapped compiler. Interesting options: -* `-U LEAN_MULTI_THREAD` can be used to optimize programs not making use of multi-threading * `--print-cflags`: print C compiler flags necessary for building against the Lean runtime and exit * `--print-ldlags`: print C compiler flags necessary for statically linking against the Lean library and exit * Set the `LEANC_GMP` environment variable to a path to `libgmp.a` (or `-l:libgmp.a` on Linux) to link GMP statically. @@ -17,33 +20,37 @@ Beware of the licensing consequences since GMP is LGPL." let root ← match (← IO.getEnv "LEAN_SYSROOT") with | some root => System.FilePath.mk root | none => (← IO.appDir).parent.get! + let rootify s := s.replace "ROOT" root.toString + + let compileOnly := args.contains "-c" + let linkStatic := !args.contains "-shared" + -- We assume that the CMake variables do not contain escaped spaces - let cflags := ["-I", (root / "include").toString] ++ "@LEANC_EXTRA_FLAGS@".trim.splitOn - let mut ldflags := ["-L", (root / "lib").toString, "-L", (root / "lib" / "lean").toString, (← IO.getEnv "LEANC_GMP").getD "-lgmp"] ++ "@LEAN_EXTRA_LINKER_FLAGS@".trim.splitOn - let mut ldflagsExt := "@LEANC_STATIC_LINKER_FLAGS@".trim.splitOn + let cflags := getCFlags root + let mut cflagsInternal := "@LEANC_INTERNAL_FLAGS@".trim.splitOn + let mut ldflagsInternal := "@LEANC_INTERNAL_LINKER_FLAGS@".trim.splitOn + let ldflags := getLinkerFlags root linkStatic ((← IO.getEnv "LEANC_GMP").getD "-lgmp") for arg in args do match arg with - | "-shared" => - -- switch to shared linker flags - ldflagsExt := "@LEANC_SHARED_LINKER_FLAGS@".trim.splitOn - | "-c" => - ldflags := [] - ldflagsExt := [] | "--print-cflags" => - IO.println <| " ".intercalate cflags + IO.println <| " ".intercalate (cflags.map rootify |>.toList) return 0 | "--print-ldflags" => - IO.println <| " ".intercalate (cflags ++ ldflagsExt ++ ldflags) + IO.println <| " ".intercalate ((cflags ++ ldflags).map rootify |>.toList) return 0 | _ => () - let mut cc := (← IO.getEnv "LEAN_CC").getD "@LEANC_CC@" - if cc.startsWith "." then - cc := (root / "bin" / cc).toString - - let args := cflags ++ args ++ ldflagsExt ++ ldflags ++ ["-Wno-unused-command-line-argument"] + let mut cc := "@LEANC_CC@" + if let some cc' ← IO.getEnv "LEAN_CC" then + cc := cc' + -- these are intended for the bundled compiler only + cflagsInternal := [] + ldflagsInternal := [] + cc := rootify cc + let args := cflags ++ cflagsInternal ++ args ++ ldflagsInternal ++ ldflags ++ ["-Wno-unused-command-line-argument"] + let args := args.filter (!·.isEmpty) |>.map rootify if args.contains "-v" then - IO.eprintln s!"{cc} {" ".intercalate args}" - let child ← IO.Process.spawn { cmd := cc, args := args.toArray } + IO.eprintln s!"{cc} {" ".intercalate args.toList}" + let child ← IO.Process.spawn { cmd := cc, args } child.wait diff --git a/stage0/src/Leanpkg.lean b/stage0/src/Leanpkg.lean index df86545e6d..c98207e652 100644 --- a/stage0/src/Leanpkg.lean +++ b/stage0/src/Leanpkg.lean @@ -219,7 +219,7 @@ end Leanpkg def main (args : List String) : IO UInt32 := do try Lean.enableInitializersExecution - Lean.initSearchPath none -- HACK + Lean.initSearchPath (← Lean.getBuildDir) let (cmd, outerArgs, innerArgs) ← Leanpkg.splitCmdlineArgs args Leanpkg.main cmd outerArgs innerArgs catch e => diff --git a/stage0/src/bin/leanc.in b/stage0/src/bin/leanc.in index e6bb09797a..60ae824f77 100755 --- a/stage0/src/bin/leanc.in +++ b/stage0/src/bin/leanc.in @@ -1,10 +1,13 @@ #!/usr/bin/env bash # used only for building Lean itself root=$(dirname $0) -ldflags=("-L$root/lib/lean" "${LEANC_GMP:--lgmp}" @LEAN_EXTRA_LINKER_FLAGS@) +ldflags=(@LEANC_INTERNAL_LINKER_FLAGS@ "-L$root/lib/lean" "${LEANC_GMP:--lgmp}" @LEAN_EXTRA_LINKER_FLAGS@) for arg in "$@"; do # ccache doesn't like linker flags being passed here [[ "$arg" = "-c" ]] && ldflags=() - [[ "$arg" = "-v" ]] && set -x + [[ "$arg" = "-v" ]] && v=1 done -exec ${LEAN_CC:-@CMAKE_C_COMPILER@} "-I$root/include" @LEANC_EXTRA_FLAGS@ "$@" "${ldflags[@]}" -Wno-unused-command-line-argument +cmd=(${LEAN_CC:-@CMAKE_C_COMPILER@} "-I$root/include" @LEANC_EXTRA_FLAGS@ @LEANC_INTERNAL_FLAGS@ "$@" "${ldflags[@]}" -Wno-unused-command-line-argument) +cmd=$(printf '%q ' "${cmd[@]}" | sed "s!ROOT!$root!g") +[[ $v == 1 ]] && echo $cmd +eval $cmd diff --git a/stage0/src/include/lean/lean.h b/stage0/src/include/lean/lean.h index a1212c8dad..603190da53 100644 --- a/stage0/src/include/lean/lean.h +++ b/stage0/src/include/lean/lean.h @@ -5,18 +5,14 @@ Released under Apache 2.0 license as described in the file LICENSE. Author: Leonardo de Moura */ #pragma once -#include +#include #include #include -#include -#include #include -#if !defined(__APPLE__) -#include -#endif #ifdef __cplusplus #include +#include #define _Atomic(t) std::atomic #define LEAN_USING_STD using namespace std; /* NOLINT */ extern "C" { @@ -45,6 +41,15 @@ extern "C" { #define LEAN_ALWAYS_INLINE #endif +#ifndef assert +#ifdef NDEBUG +#define assert(expr) +#else +void lean_notify_assert(const char * fileName, int line, const char * condition); +#define assert(expr) { if (LEAN_UNLIKELY(!(expr))) lean_notify_assert(__FILE__, __LINE__, #expr); } +#endif +#endif + #ifdef _WIN32 #define LEAN_EXPORT __declspec(dllexport) #else @@ -58,12 +63,6 @@ extern "C" { #define LEAN_SHARED #endif -#ifdef LEAN_RUNTIME_STATS -#define LEAN_RUNTIME_STAT_CODE(c) c -#else -#define LEAN_RUNTIME_STAT_CODE(c) -#endif - #define LEAN_BYTE(Var, Index) *(((uint8_t*)&Var)+Index) #define LeanMaxCtorTag 244 @@ -310,6 +309,10 @@ LEAN_SHARED void lean_free_small(void * p); LEAN_SHARED unsigned lean_small_mem_size(void * p); LEAN_SHARED void lean_inc_heartbeat(); +#ifndef __cplusplus +void * malloc(size_t); // avoid including big `stdlib.h` +#endif + static inline lean_object * lean_alloc_small_object(unsigned sz) { #ifdef LEAN_SMALL_ALLOCATOR sz = lean_align(sz, LEAN_OBJECT_SIZE_DELTA); @@ -358,6 +361,10 @@ static inline unsigned lean_small_object_size(lean_object * o) { #endif } +#ifndef __cplusplus +void free(void *); // avoid including big `stdlib.h` +#endif + static inline void lean_free_small_object(lean_object * o) { #ifdef LEAN_SMALL_ALLOCATOR lean_free_small(o); @@ -1008,9 +1015,9 @@ static inline uint8_t lean_string_utf8_at_end(b_lean_obj_arg s, b_lean_obj_arg i } LEAN_SHARED lean_obj_res lean_string_utf8_extract(b_lean_obj_arg s, b_lean_obj_arg b, b_lean_obj_arg e); static inline lean_obj_res lean_string_utf8_byte_size(b_lean_obj_arg s) { return lean_box(lean_string_size(s) - 1); } +LEAN_SHARED bool lean_string_eq_cold(b_lean_obj_arg s1, b_lean_obj_arg s2); static inline bool lean_string_eq(b_lean_obj_arg s1, b_lean_obj_arg s2) { - return s1 == s2 || - (lean_string_size(s1) == lean_string_size(s2) && memcmp(lean_string_cstr(s1), lean_string_cstr(s2), lean_string_size(s1)) == 0); + return s1 == s2 || (lean_string_size(s1) == lean_string_size(s2) && lean_string_eq_cold(s1, s2)); } static inline bool lean_string_ne(b_lean_obj_arg s1, b_lean_obj_arg s2) { return !lean_string_eq(s1, s2); } LEAN_SHARED bool lean_string_lt(b_lean_obj_arg s1, b_lean_obj_arg s2); diff --git a/stage0/src/kernel/type_checker.cpp b/stage0/src/kernel/type_checker.cpp index 2b693885f1..d2b887c894 100644 --- a/stage0/src/kernel/type_checker.cpp +++ b/stage0/src/kernel/type_checker.cpp @@ -749,6 +749,27 @@ bool type_checker::try_eta_expansion_core(expr const & t, expr const & s) { } } +/** \brief check whether \c s is of the form mk t.1 ... t.n */ +bool type_checker::try_eta_struct_core(expr const & t, expr const & s) { + expr f = get_app_fn(s); + if (!is_constant(f)) return false; + constant_info f_info = env().get(const_name(f)); + if (!f_info.is_constructor()) return false; + constructor_val f_val = f_info.to_constructor_val(); + if (get_app_num_args(s) != f_val.get_nparams() + f_val.get_nfields()) return false; + inductive_val I_val = env().get(f_val.get_induct()).to_inductive_val(); + if (I_val.get_ncnstrs() != 1) return 1; + buffer s_args; + get_app_args(s, s_args); + for (unsigned i = f_val.get_nparams(); i < s_args.size(); i++) { + expr s_arg = whnf(s_args[i]); + if (!is_proj(s_arg)) return false; + if (proj_idx(s_arg) + nat(f_val.get_nparams()) != nat(i)) return false; + if (!is_def_eq(t, proj_expr(s_arg))) return false; + } + return true; +} + /** \brief Return true if \c t and \c s are definitionally equal because they are applications of the form (f a_1 ... a_n) (g b_1 ... b_n), and \c f and \c g are definitionally equal, and \c a_i and \c b_i are also definitionally equal for every 1 <= i <= n. @@ -961,6 +982,9 @@ bool type_checker::is_def_eq_core(expr const & t, expr const & s) { if (try_eta_expansion(t_n, s_n)) return true; + if (try_eta_struct(t_n, s_n)) + return true; + r = try_string_lit_expansion(t_n, s_n); if (r != l_undef) return r == l_true; diff --git a/stage0/src/kernel/type_checker.h b/stage0/src/kernel/type_checker.h index a5fcd4612e..45b510f782 100644 --- a/stage0/src/kernel/type_checker.h +++ b/stage0/src/kernel/type_checker.h @@ -78,6 +78,10 @@ private: bool try_eta_expansion(expr const & t, expr const & s) { return try_eta_expansion_core(t, s) || try_eta_expansion_core(s, t); } + bool try_eta_struct_core(expr const & t, expr const & s); + bool try_eta_struct(expr const & t, expr const & s) { + return try_eta_struct_core(t, s) || try_eta_struct_core(s, t); + } lbool try_string_lit_expansion_core(expr const & t, expr const & s); lbool try_string_lit_expansion(expr const & t, expr const & s); bool is_def_eq_app(expr const & t, expr const & s); diff --git a/stage0/src/runtime/alloc.cpp b/stage0/src/runtime/alloc.cpp index 5811ee57d5..f3c8a44d80 100644 --- a/stage0/src/runtime/alloc.cpp +++ b/stage0/src/runtime/alloc.cpp @@ -10,6 +10,12 @@ Author: Leonardo de Moura #include "runtime/debug.h" #include "runtime/alloc.h" +#ifdef LEAN_RUNTIME_STATS +#define LEAN_RUNTIME_STAT_CODE(c) c +#else +#define LEAN_RUNTIME_STAT_CODE(c) +#endif + #if defined(__GNUC__) || defined(__clang__) #define LEAN_NOINLINE __attribute__((noinline)) #else diff --git a/stage0/src/runtime/compact.cpp b/stage0/src/runtime/compact.cpp index c3f0b9a7b3..5c32be133f 100644 --- a/stage0/src/runtime/compact.cpp +++ b/stage0/src/runtime/compact.cpp @@ -8,6 +8,7 @@ Author: Leonardo de Moura #include #include #include +#include #include #include "runtime/hash.h" #include "runtime/compact.h" diff --git a/stage0/src/runtime/debug.cpp b/stage0/src/runtime/debug.cpp index 7317464a32..ee4f917100 100644 --- a/stage0/src/runtime/debug.cpp +++ b/stage0/src/runtime/debug.cpp @@ -17,6 +17,7 @@ Author: Leonardo de Moura // Support for pid #include #endif +#include #include "runtime/debug.h" namespace lean { @@ -133,4 +134,9 @@ void invoke_debugger() { #endif } // LCOV_EXCL_STOP + +extern "C" LEAN_EXPORT void lean_notify_assert(const char * fileName, int line, const char * condition) { + notify_assertion_violation(fileName, line, condition); + invoke_debugger(); +} } diff --git a/stage0/src/runtime/object.cpp b/stage0/src/runtime/object.cpp index 7ad5e330f9..aadbc732ea 100644 --- a/stage0/src/runtime/object.cpp +++ b/stage0/src/runtime/object.cpp @@ -1649,6 +1649,10 @@ extern "C" LEAN_EXPORT object * lean_string_append(object * s1, object * s2) { return r; } +extern "C" LEAN_EXPORT bool lean_string_eq_cold(b_lean_obj_arg s1, b_lean_obj_arg s2) { + return std::memcmp(lean_string_cstr(s1), lean_string_cstr(s2), lean_string_size(s1)) == 0; +} + bool string_eq(object * s1, char const * s2) { if (lean_string_size(s1) != strlen(s2) + 1) return false; diff --git a/stage0/src/runtime/sharecommon.cpp b/stage0/src/runtime/sharecommon.cpp index eff5ac952c..5ec8aefef6 100644 --- a/stage0/src/runtime/sharecommon.cpp +++ b/stage0/src/runtime/sharecommon.cpp @@ -5,6 +5,7 @@ Released under Apache 2.0 license as described in the file LICENSE. Author: Leonardo de Moura */ #include +#include #include "runtime/object.h" #include "runtime/hash.h" diff --git a/stage0/src/shell/CMakeLists.txt b/stage0/src/shell/CMakeLists.txt index c904abe999..afeec0ad8f 100644 --- a/stage0/src/shell/CMakeLists.txt +++ b/stage0/src/shell/CMakeLists.txt @@ -17,12 +17,12 @@ if(LLVM) set(LLVM_SYSTEM_LIBS "-lz") endif() if(${STATIC} AND NOT ("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin")) - set(LEAN_EXE_LINKER_FLAGS "${LEAN_EXE_LINKER_FLAGS} `llvm-config --link-static --ldflags --libs nativecodegen` -Wl,-Bstatic ${LLVM_SYSTEM_LIBS} -Wl,-Bdynamic") + string(APPEND LEAN_EXE_LINKER_FLAGS " `llvm-config --link-static --ldflags --libs nativecodegen` -Wl,-Bstatic ${LLVM_SYSTEM_LIBS} -Wl,-Bdynamic") else() - set(LEAN_EXE_LINKER_FLAGS "${LEAN_EXE_LINKER_FLAGS} `llvm-config --ldflags --libs nativecodegen` ${LLVM_SYSTEM_LIBS}") + string(APPEND LEAN_EXE_LINKER_FLAGS " `llvm-config --ldflags --libs nativecodegen` ${LLVM_SYSTEM_LIBS}") endif() if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") - set(LEAN_EXE_LINKER_FLAGS "${LEAN_EXE_LINKER_FLAGS} -lole32 -luuid") + string(APPEND LEAN_EXE_LINKER_FLAGS " -lole32 -luuid") endif() endif() @@ -46,6 +46,9 @@ add_test(lean_ghash2 "${CMAKE_BINARY_DIR}/bin/lean" --githash) add_test(lean_unknown_option bash "${LEAN_SOURCE_DIR}/cmake/check_failure.sh" "${CMAKE_BINARY_DIR}/bin/lean" "-z") add_test(lean_unknown_file1 bash "${LEAN_SOURCE_DIR}/cmake/check_failure.sh" "${CMAKE_BINARY_DIR}/bin/lean" "boofoo.lean") +# LEANC_OPTS is necessary for macOS c++ to find its headers +set(TEST_VARS "PATH=${LEAN_BIN}:$PATH ${LEAN_TEST_VARS} CXX='${CMAKE_CXX_COMPILER} ${LEANC_OPTS}'") + # LEAN TESTS file(GLOB LEANTESTS "${LEAN_SOURCE_DIR}/../tests/lean/*.lean") FOREACH(T ${LEANTESTS}) @@ -53,7 +56,7 @@ FOREACH(T ${LEANTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leantest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/lean" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") endif() ENDFOREACH(T) @@ -64,7 +67,7 @@ FOREACH(T ${LEANRUNTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leanruntest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/lean/run" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") endif() ENDFOREACH(T) @@ -74,15 +77,15 @@ FOREACH(T ${LEANCOMPTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leancomptest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/compiler" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") ENDFOREACH(T) add_test(NAME leancomptest_foreign WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/compiler/foreign" - COMMAND bash -c "${LEAN_BIN}/leanmake --always-make CXX='${CMAKE_CXX_COMPILER} ${LEANC_OPTS}'") + COMMAND bash -c "LEANC_GMP=${GMP_LIBRARIES} ${LEAN_BIN}/leanmake --always-make") add_test(NAME leancomptest_doc_example WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../doc/examples/compiler" - COMMAND bash -c "${LEAN_BIN}/leanmake --always-make bin && ./build/bin/test hello world") + COMMAND bash -c "export ${TEST_VARS}; leanmake --always-make bin && ./build/bin/test hello world") # LEAN INTERPRETER TESTS file(GLOB LEANINTERPTESTS "${LEAN_SOURCE_DIR}/../tests/compiler/*.lean") @@ -91,7 +94,7 @@ FOREACH(T ${LEANINTERPTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leaninterptest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/compiler" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single_interpret.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single_interpret.sh ${T_NAME}") endif() ENDFOREACH(T) @@ -103,7 +106,7 @@ FOREACH(T_OUT ${LEANBENCHTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leanbenchtest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/bench" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") ENDFOREACH(T_OUT) file(GLOB LEANINTERPTESTS "${LEAN_SOURCE_DIR}/../tests/plugin/*.lean") @@ -111,7 +114,7 @@ FOREACH(T ${LEANINTERPTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leanplugintest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/plugin" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") ENDFOREACH(T) # LEAN TESTS using --trust=0 @@ -120,7 +123,7 @@ FOREACH(T ${LEANT0TESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leant0test_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/lean/trust0" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") ENDFOREACH(T) # LEAN SERVER TESTS @@ -130,7 +133,7 @@ FOREACH(T ${LEANTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leanservertest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/lean/server" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") endif() ENDFOREACH(T) @@ -141,7 +144,7 @@ FOREACH(T ${LEANTESTS}) GET_FILENAME_COMPONENT(T_NAME ${T} NAME) add_test(NAME "leaninteractivetest_${T_NAME}" WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/lean/interactive" - COMMAND bash -c "PATH=${LEAN_BIN}:$PATH ./test_single.sh ${T_NAME}") + COMMAND bash -c "${TEST_VARS} ./test_single.sh ${T_NAME}") endif() ENDFOREACH(T) @@ -149,7 +152,7 @@ add_test(NAME leanpkgtest WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/b" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} leanpkg build # linking requires some manual steps (cd ../a; leanpkg build lib) @@ -160,14 +163,14 @@ add_test(NAME leanpkgtest_cyclic WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/cyclic" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} leanpkg build 2>&1 | grep 'import cycle'") add_test(NAME leanpkgtest_user_ext WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/user_ext" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} find . -name '*.olean' -delete leanmake | grep 'world, hello, test'") @@ -175,7 +178,7 @@ add_test(NAME leanpkgtest_user_attr WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/user_attr" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} find . -name '*.olean' -delete leanmake") @@ -183,7 +186,7 @@ add_test(NAME leanpkgtest_user_opt WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/user_opt" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} find . -name '*.olean' -delete leanmake") @@ -191,7 +194,7 @@ add_test(NAME leanpkgtest_prv WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/prv" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} find . -name '*.olean' -delete leanmake 2>&1 | grep 'error: field.*private'") @@ -199,7 +202,7 @@ add_test(NAME leanpkgtest_user_attr_app WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/../tests/leanpkg/user_attr_app" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} find . -name '*.olean' -delete leanmake bin LINK_OPTS='${LEAN_DYN_EXE_LINKER_FLAGS}' && build/bin/UserAttr") @@ -215,5 +218,5 @@ add_test(NAME laketest WORKING_DIRECTORY "${LEAN_SOURCE_DIR}/lake/examples" COMMAND bash -c " set -eu - export PATH=${LEAN_BIN}:$PATH + export ${TEST_VARS} make LAKE=lake test") diff --git a/stage0/src/util/CMakeLists.txt b/stage0/src/util/CMakeLists.txt index 71e63e9505..b3760c408b 100644 --- a/stage0/src/util/CMakeLists.txt +++ b/stage0/src/util/CMakeLists.txt @@ -1,6 +1,9 @@ +configure_file(ffi.cpp "${CMAKE_BINARY_DIR}/util/ffi.cpp" @ONLY) + add_library(util OBJECT name.cpp name_set.cpp escaped.cpp bit_tricks.cpp ascii.cpp path.cpp lbool.cpp init_module.cpp list_fn.cpp timeit.cpp timer.cpp name_generator.cpp kvmap.cpp map_foreach.cpp - options.cpp format.cpp option_declarations.cpp shell.cpp) + options.cpp format.cpp option_declarations.cpp shell.cpp + "${CMAKE_BINARY_DIR}/util/ffi.cpp") diff --git a/stage0/src/util/ffi.cpp b/stage0/src/util/ffi.cpp new file mode 100644 index 0000000000..923fe818c3 --- /dev/null +++ b/stage0/src/util/ffi.cpp @@ -0,0 +1,19 @@ +/* +Copyright (c) 2021 Sebastian Ullrich. All rights reserved. +Released under Apache 2.0 license as described in the file LICENSE. + +Author: Sebastian Ullrich +*/ + +#include +#include "runtime/string_ref.h" + +namespace lean { +extern "C" object * lean_get_leanc_extra_flags(object *) { + return lean_mk_string("@LEANC_EXTRA_FLAGS@"); +} + +extern "C" object * lean_get_linker_flags(uint8 link_static) { + return lean_mk_string(link_static ? "@LEANC_STATIC_LINKER_FLAGS@ @LEAN_EXTRA_LINKER_FLAGS@" : "@LEANC_SHARED_LINKER_FLAGS@ @LEAN_EXTRA_LINKER_FLAGS@"); +} +} diff --git a/stage0/src/util/shell.cpp b/stage0/src/util/shell.cpp index 5c1a537e7e..6709d9f21d 100644 --- a/stage0/src/util/shell.cpp +++ b/stage0/src/util/shell.cpp @@ -336,10 +336,10 @@ void load_library(std::string path) { } namespace lean { -extern "C" object * lean_run_frontend(object * input, object * opts, object * filename, object * main_module_name, object * w); -pair_ref run_new_frontend(std::string const & input, options const & opts, std::string const & file_name, name const & main_module_name) { +extern "C" object * lean_run_frontend(object * input, object * opts, object * filename, object * main_module_name, uint32_t trust_level, object * w); +pair_ref run_new_frontend(std::string const & input, options const & opts, std::string const & file_name, name const & main_module_name, uint32_t trust_level) { return get_io_result>( - lean_run_frontend(mk_string(input), opts.to_obj_arg(), mk_string(file_name), main_module_name.to_obj_arg(), io_mk_world())); + lean_run_frontend(mk_string(input), opts.to_obj_arg(), mk_string(file_name), main_module_name.to_obj_arg(), trust_level, io_mk_world())); } /* def workerMain : Options → IO UInt32 */ @@ -355,9 +355,9 @@ uint32_t run_server_watchdog(buffer const & args) { return get_io_scalar_result(lean_server_watchdog_main(arglist.to_obj_arg(), io_mk_world())); } -extern "C" object* lean_init_search_path(object* opt_path, object* w); +extern "C" object* lean_init_search_path(object* w); void init_search_path() { - get_io_scalar_result(lean_init_search_path(mk_option_none(), io_mk_world())); + get_io_scalar_result(lean_init_search_path(io_mk_world())); } extern "C" object* lean_module_name_of_file(object* fname, object * root_dir, object* w); @@ -387,7 +387,7 @@ void environment_free_regions(environment && env) { } extern "C" object * lean_get_prefix(object * w); -extern "C" object * lean_get_libdir(object * w); +extern "C" object * lean_get_libdir(object * sysroot, object * w); void check_optarg(char const * option_name) { if (!optarg) { @@ -571,7 +571,8 @@ extern "C" LEAN_EXPORT int lean_main(int argc, char ** argv) { } if (print_libdir) { - std::cout << get_io_result(lean_get_libdir(io_mk_world())).data() << std::endl; + string_ref prefix = get_io_result(lean_get_prefix(io_mk_world())); + std::cout << get_io_result(lean_get_libdir(prefix.to_obj_arg(), io_mk_world())).data() << std::endl; return 0; } @@ -647,7 +648,7 @@ extern "C" LEAN_EXPORT int lean_main(int argc, char ** argv) { if (!main_module_name) main_module_name = name("_stdin"); - pair_ref r = run_new_frontend(contents, opts, mod_fn, *main_module_name); + pair_ref r = run_new_frontend(contents, opts, mod_fn, *main_module_name, trust_lvl); env = r.fst(); bool ok = unbox(r.snd().raw()); diff --git a/stage0/stdlib/Init/Control/Except.c b/stage0/stdlib/Init/Control/Except.c index 910a9d9051..364688455c 100644 --- a/stage0/stdlib/Init/Control/Except.c +++ b/stage0/stdlib/Init/Control/Except.c @@ -85,6 +85,7 @@ LEAN_EXPORT lean_object* l_Except_tryCatch___rarg(lean_object*, lean_object*); static lean_object* l_Except_instMonadExcept___closed__8; LEAN_EXPORT lean_object* l_ExceptT_finally___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Except_instMonadExcept___closed__4; +LEAN_EXPORT lean_object* l_liftExcept(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_instMonadExceptT___rarg___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_map___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_tryFinally___rarg___lambda__1(lean_object*, lean_object*); @@ -131,6 +132,7 @@ static lean_object* l_Except_instMonadExcept___closed__9; LEAN_EXPORT lean_object* l_ExceptT_run___rarg(lean_object*); static lean_object* l_Except_instMonadExcept___closed__1; LEAN_EXPORT lean_object* l_ExceptT_instMonadLiftExceptT___rarg(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_instMonadExceptT___rarg___lambda__8(lean_object*, lean_object*); static lean_object* l_Except_instMonadExcept___closed__2; LEAN_EXPORT lean_object* l_Id_finally___rarg(lean_object*, lean_object*); @@ -2076,6 +2078,42 @@ x_4 = lean_alloc_closure((void*)(l_observing___rarg), 3, 0); return x_4; } } +LEAN_EXPORT lean_object* l_liftExcept___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_dec(x_2); +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +lean_dec(x_3); +x_5 = lean_ctor_get(x_1, 0); +lean_inc(x_5); +lean_dec(x_1); +x_6 = lean_apply_2(x_5, lean_box(0), x_4); +return x_6; +} +else +{ +lean_object* x_7; lean_object* x_8; +lean_dec(x_1); +x_7 = lean_ctor_get(x_3, 0); +lean_inc(x_7); +lean_dec(x_3); +x_8 = lean_apply_2(x_2, lean_box(0), x_7); +return x_8; +} +} +} +LEAN_EXPORT lean_object* l_liftExcept(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_liftExcept___rarg), 3, 0); +return x_4; +} +} static lean_object* _init_l_instMonadControlExceptT___rarg___lambda__1___closed__1() { _start: { diff --git a/stage0/stdlib/Init/Data/String/Basic.c b/stage0/stdlib/Init/Data/String/Basic.c index 6d8dc923fc..03051433a5 100644 --- a/stage0/stdlib/Init/Data/String/Basic.c +++ b/stage0/stdlib/Init/Data/String/Basic.c @@ -26,7 +26,6 @@ LEAN_EXPORT lean_object* l_String_contains___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_remainingToString(lean_object*); LEAN_EXPORT lean_object* l_Substring_splitOn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_toList(lean_object*); -LEAN_EXPORT uint8_t l_String_Iterator_isPrefixOfRemaining(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_revPosOfAux___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_get___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_instInhabitedString; @@ -62,6 +61,7 @@ LEAN_EXPORT uint8_t l_Substring_any(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_splitOn___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_takeWhileAux___at_String_nextUntil___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_utf8_prev(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_String_replace(lean_object*, lean_object*, lean_object*); lean_object* l_Char_toUpper(uint32_t); LEAN_EXPORT lean_object* l_String_isEmpty___boxed(lean_object*); LEAN_EXPORT lean_object* l_String_back___boxed(lean_object*); @@ -83,6 +83,7 @@ LEAN_EXPORT lean_object* l_String_foldlAux_loop___rarg___boxed(lean_object*, lea LEAN_EXPORT uint8_t l_String_contains___lambda__1(uint32_t, uint32_t); lean_object* lean_string_utf8_extract(lean_object*, lean_object*, lean_object*); uint8_t l_Char_isWhitespace(uint32_t); +LEAN_EXPORT lean_object* l_String_replace_loop___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_toEnd(lean_object*); LEAN_EXPORT uint32_t l___private_Init_Data_String_Basic_0__String_utf8GetAux(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_split___boxed(lean_object*, lean_object*); @@ -147,7 +148,7 @@ LEAN_EXPORT lean_object* l_String_revPosOfAux(lean_object*, uint32_t, lean_objec LEAN_EXPORT lean_object* l_String_Iterator_nextn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_revFindAux___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_revFindAux(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_String_Iterator_isPrefixOfRemaining___boxed(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_String_substrEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_takeWhile(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_singleton(uint32_t); LEAN_EXPORT lean_object* l_String_Iterator_pos(lean_object*); @@ -197,6 +198,7 @@ LEAN_EXPORT uint32_t l_String_front(lean_object*); LEAN_EXPORT lean_object* l_String_dropWhile___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_atEnd___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_posOf___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_String_substrEq_loop___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_nextWhile(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_hasNext___boxed(lean_object*); LEAN_EXPORT lean_object* l_String_revPosOf___boxed(lean_object*, lean_object*); @@ -234,7 +236,6 @@ LEAN_EXPORT lean_object* l_String_foldrAux___rarg___boxed(lean_object*, lean_obj LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__String_utf8PrevAux___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_trimLeft(lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_setCurr(lean_object*, uint32_t); -LEAN_EXPORT uint8_t l_String_isPrefixOf_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_String_all___lambda__1(lean_object*, uint32_t); LEAN_EXPORT uint32_t l_Substring_front(lean_object*); LEAN_EXPORT lean_object* l_Char_toString(uint32_t); @@ -247,12 +248,13 @@ LEAN_EXPORT lean_object* l_String_toLower(lean_object*); LEAN_EXPORT lean_object* l_String_foldlAux(lean_object*); LEAN_EXPORT uint8_t l_String_startsWith(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__String_utf8ExtractAux_u2081(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_String_replace_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_toNat_x3f___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__String_utf8ExtractAux_u2082___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_foldrAux_loop___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_posOf___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_instLTString; -LEAN_EXPORT lean_object* l_String_isPrefixOf_loop___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_String_substrEq_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Substring_atEnd(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_isPrefixOf___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_trim(lean_object*); @@ -275,11 +277,13 @@ LEAN_EXPORT lean_object* l_String_Iterator_remainingBytes(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_takeWhileAux___at_String_nextUntil___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_toString(lean_object*); LEAN_EXPORT lean_object* l_Substring_foldr___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_String_substrEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_toNat_x3f(lean_object*); LEAN_EXPORT lean_object* l_String_foldrAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_push___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_drop(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_startsWith___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_String_replace___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__String_utf8GetAux___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_pushn(lean_object*, uint32_t, lean_object*); lean_object* l_Nat_min(lean_object*, lean_object*); @@ -2015,39 +2019,6 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT uint8_t l_String_Iterator_isPrefixOfRemaining(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_3 = lean_ctor_get(x_1, 0); -x_4 = lean_ctor_get(x_1, 1); -x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_2, 1); -x_7 = lean_string_utf8_byte_size(x_3); -x_8 = lean_string_utf8_extract(x_3, x_4, x_7); -x_9 = lean_nat_sub(x_7, x_4); -lean_dec(x_7); -x_10 = lean_nat_add(x_6, x_9); -lean_dec(x_9); -x_11 = lean_string_utf8_extract(x_5, x_6, x_10); -lean_dec(x_10); -x_12 = lean_string_dec_eq(x_8, x_11); -lean_dec(x_11); -lean_dec(x_8); -return x_12; -} -} -LEAN_EXPORT lean_object* l_String_Iterator_isPrefixOfRemaining___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -uint8_t x_3; lean_object* x_4; -x_3 = l_String_Iterator_isPrefixOfRemaining(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; -} -} LEAN_EXPORT lean_object* l_String_Iterator_nextn(lean_object* x_1, lean_object* x_2) { _start: { @@ -2743,75 +2714,128 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT uint8_t l_String_isPrefixOf_loop(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT uint8_t l_String_substrEq_loop(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -uint8_t x_4; -x_4 = lean_string_utf8_at_end(x_1, x_3); -if (x_4 == 0) +uint8_t x_6; +x_6 = lean_nat_dec_le(x_5, x_3); +if (x_6 == 0) { -uint32_t x_5; uint32_t x_6; uint8_t x_7; -x_5 = lean_string_utf8_get(x_1, x_3); -x_6 = lean_string_utf8_get(x_2, x_3); -x_7 = lean_uint32_dec_eq(x_5, x_6); -if (x_7 == 0) +uint32_t x_7; uint32_t x_8; uint8_t x_9; +x_7 = lean_string_utf8_get(x_1, x_3); +x_8 = lean_string_utf8_get(x_2, x_4); +x_9 = lean_uint32_dec_eq(x_7, x_8); +if (x_9 == 0) { -uint8_t x_8; +uint8_t x_10; +lean_dec(x_4); lean_dec(x_3); -x_8 = 0; -return x_8; +x_10 = 0; +return x_10; } else { -lean_object* x_9; -x_9 = lean_string_utf8_next(x_2, x_3); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = l_String_csize(x_7); +x_12 = lean_nat_add(x_3, x_11); +lean_dec(x_11); lean_dec(x_3); -x_3 = x_9; +x_13 = l_String_csize(x_8); +x_14 = lean_nat_add(x_4, x_13); +lean_dec(x_13); +lean_dec(x_4); +x_3 = x_12; +x_4 = x_14; goto _start; } } else { -uint8_t x_11; +uint8_t x_16; +lean_dec(x_4); lean_dec(x_3); -x_11 = 1; -return x_11; +x_16 = 1; +return x_16; } } } -LEAN_EXPORT lean_object* l_String_isPrefixOf_loop___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_String_substrEq_loop___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -uint8_t x_4; lean_object* x_5; -x_4 = l_String_isPrefixOf_loop(x_1, x_2, x_3); +uint8_t x_6; lean_object* x_7; +x_6 = l_String_substrEq_loop(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_5 = lean_box(x_4); -return x_5; +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT uint8_t l_String_substrEq(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = lean_nat_add(x_2, x_5); +x_7 = lean_string_utf8_byte_size(x_1); +x_8 = lean_nat_dec_le(x_6, x_7); +lean_dec(x_7); +if (x_8 == 0) +{ +uint8_t x_9; +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +x_9 = 0; +return x_9; +} +else +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_10 = lean_nat_add(x_4, x_5); +x_11 = lean_string_utf8_byte_size(x_3); +x_12 = lean_nat_dec_le(x_10, x_11); +lean_dec(x_11); +lean_dec(x_10); +if (x_12 == 0) +{ +uint8_t x_13; +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +x_13 = 0; +return x_13; +} +else +{ +uint8_t x_14; +x_14 = l_String_substrEq_loop(x_1, x_3, x_2, x_4, x_6); +lean_dec(x_6); +return x_14; +} +} +} +} +LEAN_EXPORT lean_object* l_String_substrEq___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; lean_object* x_7; +x_6 = l_String_substrEq(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; } } LEAN_EXPORT uint8_t l_String_isPrefixOf(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; uint8_t x_5; -x_3 = lean_string_length(x_1); -x_4 = lean_string_length(x_2); -x_5 = lean_nat_dec_le(x_3, x_4); -lean_dec(x_4); +x_3 = lean_string_utf8_byte_size(x_1); +x_4 = lean_unsigned_to_nat(0u); +x_5 = l_String_substrEq(x_1, x_4, x_2, x_4, x_3); lean_dec(x_3); -if (x_5 == 0) -{ -uint8_t x_6; -x_6 = 0; -return x_6; -} -else -{ -lean_object* x_7; uint8_t x_8; -x_7 = lean_unsigned_to_nat(0u); -x_8 = l_String_isPrefixOf_loop(x_1, x_2, x_7); -return x_8; -} +return x_5; } } LEAN_EXPORT lean_object* l_String_isPrefixOf___boxed(lean_object* x_1, lean_object* x_2) { @@ -2825,6 +2849,94 @@ x_4 = lean_box(x_3); return x_4; } } +LEAN_EXPORT lean_object* l_String_replace_loop(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_string_utf8_byte_size(x_1); +x_8 = lean_string_utf8_byte_size(x_2); +x_9 = lean_nat_add(x_6, x_8); +x_10 = lean_nat_dec_lt(x_7, x_9); +if (x_10 == 0) +{ +lean_object* x_11; uint8_t x_12; +lean_dec(x_7); +x_11 = lean_unsigned_to_nat(0u); +lean_inc(x_6); +x_12 = l_String_substrEq(x_1, x_6, x_2, x_11, x_8); +lean_dec(x_8); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_9); +x_13 = lean_string_utf8_next(x_1, x_6); +lean_dec(x_6); +x_6 = x_13; +goto _start; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_string_utf8_extract(x_1, x_5, x_6); +lean_dec(x_6); +lean_dec(x_5); +x_16 = lean_string_append(x_4, x_15); +lean_dec(x_15); +x_17 = lean_string_append(x_16, x_3); +lean_inc(x_9); +x_4 = x_17; +x_5 = x_9; +x_6 = x_9; +goto _start; +} +} +else +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_19 = lean_string_utf8_extract(x_1, x_5, x_7); +lean_dec(x_7); +lean_dec(x_5); +x_20 = lean_string_append(x_4, x_19); +lean_dec(x_19); +return x_20; +} +} +} +LEAN_EXPORT lean_object* l_String_replace_loop___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_String_replace_loop(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_String_replace(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = l_String_splitOnAux___closed__1; +x_5 = lean_unsigned_to_nat(0u); +x_6 = l_String_replace_loop(x_1, x_2, x_3, x_4, x_5, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_String_replace___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_String_replace(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} LEAN_EXPORT uint8_t l_Substring_isEmpty(lean_object* x_1) { _start: { @@ -4560,31 +4672,44 @@ _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; x_3 = lean_ctor_get(x_1, 0); +lean_inc(x_3); x_4 = lean_ctor_get(x_1, 1); +lean_inc(x_4); x_5 = lean_ctor_get(x_1, 2); +lean_inc(x_5); +lean_dec(x_1); x_6 = lean_nat_sub(x_5, x_4); +lean_dec(x_5); x_7 = lean_ctor_get(x_2, 0); +lean_inc(x_7); x_8 = lean_ctor_get(x_2, 1); +lean_inc(x_8); x_9 = lean_ctor_get(x_2, 2); +lean_inc(x_9); +lean_dec(x_2); x_10 = lean_nat_sub(x_9, x_8); +lean_dec(x_9); x_11 = lean_nat_dec_eq(x_6, x_10); lean_dec(x_10); -lean_dec(x_6); if (x_11 == 0) { uint8_t x_12; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); x_12 = 0; return x_12; } else { -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_string_utf8_extract(x_3, x_4, x_5); -x_14 = lean_string_utf8_extract(x_7, x_8, x_9); -x_15 = lean_string_dec_eq(x_13, x_14); -lean_dec(x_14); -lean_dec(x_13); -return x_15; +uint8_t x_13; +x_13 = l_String_substrEq(x_3, x_4, x_7, x_8, x_6); +lean_dec(x_6); +lean_dec(x_7); +lean_dec(x_3); +return x_13; } } } @@ -4593,8 +4718,6 @@ _start: { uint8_t x_3; lean_object* x_4; x_3 = l_Substring_beq(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } @@ -4821,8 +4944,6 @@ lean_ctor_set(x_11, 0, x_2); lean_ctor_set(x_11, 1, x_4); lean_ctor_set(x_11, 2, x_10); x_12 = l_Substring_beq(x_9, x_11); -lean_dec(x_11); -lean_dec(x_9); return x_12; } } @@ -4863,8 +4984,6 @@ lean_ctor_set(x_12, 0, x_2); lean_ctor_set(x_12, 1, x_4); lean_ctor_set(x_12, 2, x_11); x_13 = l_Substring_beq(x_10, x_12); -lean_dec(x_12); -lean_dec(x_10); return x_13; } } diff --git a/stage0/stdlib/Init/Meta.c b/stage0/stdlib/Init/Meta.c index a1733238d5..fc4eb0e0ea 100644 --- a/stage0/stdlib/Init/Meta.c +++ b/stage0/stdlib/Init/Meta.c @@ -4351,7 +4351,6 @@ lean_object* x_10; lean_object* x_11; uint8_t x_12; x_10 = lean_array_fget(x_4, x_6); x_11 = lean_array_fget(x_5, x_6); x_12 = l_Lean_Syntax_structEq(x_10, x_11); -lean_dec(x_11); if (x_12 == 0) { uint8_t x_13; @@ -4502,6 +4501,7 @@ return x_3; else { uint8_t x_4; +lean_dec(x_2); x_4 = 0; return x_4; } @@ -4517,12 +4517,17 @@ x_6 = lean_ctor_get(x_1, 2); lean_inc(x_6); lean_dec(x_1); x_7 = lean_ctor_get(x_2, 1); +lean_inc(x_7); x_8 = lean_ctor_get(x_2, 2); +lean_inc(x_8); +lean_dec(x_2); x_9 = lean_name_eq(x_5, x_7); +lean_dec(x_7); lean_dec(x_5); if (x_9 == 0) { uint8_t x_10; +lean_dec(x_8); lean_dec(x_6); x_10 = 0; return x_10; @@ -4538,6 +4543,7 @@ lean_dec(x_11); if (x_13 == 0) { uint8_t x_14; +lean_dec(x_8); lean_dec(x_6); x_14 = 0; return x_14; @@ -4547,6 +4553,7 @@ else lean_object* x_15; uint8_t x_16; x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_isEqvAux___at_Lean_Syntax_structEq___spec__1(x_6, x_8, lean_box(0), x_6, x_8, x_15); +lean_dec(x_8); lean_dec(x_6); return x_16; } @@ -4555,6 +4562,7 @@ return x_16; else { uint8_t x_17; +lean_dec(x_2); lean_dec(x_1); x_17 = 0; return x_17; @@ -4569,13 +4577,17 @@ x_18 = lean_ctor_get(x_1, 1); lean_inc(x_18); lean_dec(x_1); x_19 = lean_ctor_get(x_2, 1); +lean_inc(x_19); +lean_dec(x_2); x_20 = lean_string_dec_eq(x_18, x_19); +lean_dec(x_19); lean_dec(x_18); return x_20; } else { uint8_t x_21; +lean_dec(x_2); lean_dec(x_1); x_21 = 0; return x_21; @@ -4594,13 +4606,18 @@ x_24 = lean_ctor_get(x_1, 3); lean_inc(x_24); lean_dec(x_1); x_25 = lean_ctor_get(x_2, 1); +lean_inc(x_25); x_26 = lean_ctor_get(x_2, 2); +lean_inc(x_26); x_27 = lean_ctor_get(x_2, 3); +lean_inc(x_27); +lean_dec(x_2); x_28 = l_Substring_beq(x_22, x_25); -lean_dec(x_22); if (x_28 == 0) { uint8_t x_29; +lean_dec(x_27); +lean_dec(x_26); lean_dec(x_24); lean_dec(x_23); x_29 = 0; @@ -4610,10 +4627,12 @@ else { uint8_t x_30; x_30 = lean_name_eq(x_23, x_26); +lean_dec(x_26); lean_dec(x_23); if (x_30 == 0) { uint8_t x_31; +lean_dec(x_27); lean_dec(x_24); x_31 = 0; return x_31; @@ -4622,6 +4641,7 @@ else { uint8_t x_32; x_32 = l_List_beq___at_Lean_Syntax_structEq___spec__2(x_24, x_27); +lean_dec(x_27); lean_dec(x_24); return x_32; } @@ -4630,6 +4650,7 @@ return x_32; else { uint8_t x_33; +lean_dec(x_2); lean_dec(x_1); x_33 = 0; return x_33; @@ -4678,7 +4699,6 @@ _start: { uint8_t x_3; lean_object* x_4; x_3 = l_Lean_Syntax_structEq(x_1, x_2); -lean_dec(x_2); x_4 = lean_box(x_3); return x_4; } diff --git a/stage0/stdlib/Init/Notation.c b/stage0/stdlib/Init/Notation.c index c09fb3d0c1..061e31249e 100644 --- a/stage0/stdlib/Init/Notation.c +++ b/stage0/stdlib/Init/Notation.c @@ -1320,6 +1320,7 @@ LEAN_EXPORT lean_object* l_prioHigh; LEAN_EXPORT lean_object* l_precArg; static lean_object* l_term___x2b_____closed__3; static lean_object* l_precMax___closed__4; +static lean_object* l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3; static lean_object* l_Lean_Parser_Tactic_simp___closed__14; static lean_object* l___aux__Init__Notation______macroRules___xabstx___x2b_xbb__1___closed__1; static lean_object* l_Lean_Parser_Tactic_tactic___x3c_x3b_x3e_____closed__2; @@ -1395,6 +1396,7 @@ static lean_object* l_prec_x28___x29___closed__9; static lean_object* l___aux__Init__Notation______macroRules___xabterm___x7c_x7c_x7c___xbb__1___closed__3; static lean_object* l_stx___x3c_x7c_x3e_____closed__5; static lean_object* l___aux__Init__Notation______macroRules___xabterm___x3e_x3e___xbb__1___closed__2; +static lean_object* l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2; static lean_object* l_term_u2039___u203a___closed__2; static lean_object* l___aux__Init__Notation______macroRules___xabterm___x5e___xbb__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Notation______macroRules__Lean__Parser__Tactic__tacticRefine__lift____1(lean_object*, lean_object*, lean_object*); @@ -1499,6 +1501,7 @@ static lean_object* l_Lean_Parser_Tactic_case___closed__8; static lean_object* l_term___x7c_x7c_____closed__6; static lean_object* l_termWithout__expected__type_____closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_change; +static lean_object* l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1; static lean_object* l___aux__Init__Notation______macroRules___xabterm___x5e___xbb__1___closed__5; static lean_object* l_Lean_Parser_Tactic_simp___closed__5; static lean_object* l_Lean_Parser_Tactic_locationHyp___closed__9; @@ -17908,6 +17911,32 @@ return x_51; } } } +static lean_object* _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("binrel_no_prop"); +return x_1; +} +} +static lean_object* _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___aux__Init__Notation______macroRules___xabterm___u2218___xbb__1___closed__2; +x_2 = l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("binrel_no_prop%"); +return x_1; +} +} LEAN_EXPORT lean_object* l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -17946,7 +17975,7 @@ lean_inc(x_15); x_16 = lean_ctor_get(x_2, 1); lean_inc(x_16); lean_dec(x_2); -x_17 = l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__3; +x_17 = l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3; lean_inc(x_14); x_18 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_18, 0, x_14); @@ -17966,7 +17995,7 @@ x_26 = lean_array_push(x_25, x_23); x_27 = lean_array_push(x_26, x_9); x_28 = lean_array_push(x_27, x_11); x_29 = lean_box(2); -x_30 = l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__2; +x_30 = l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2; x_31 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_31, 0, x_29); lean_ctor_set(x_31, 1, x_30); @@ -17987,7 +18016,7 @@ lean_inc(x_34); x_35 = lean_ctor_get(x_2, 1); lean_inc(x_35); lean_dec(x_2); -x_36 = l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__3; +x_36 = l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3; lean_inc(x_32); x_37 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_37, 0, x_32); @@ -18007,7 +18036,7 @@ x_45 = lean_array_push(x_44, x_42); x_46 = lean_array_push(x_45, x_9); x_47 = lean_array_push(x_46, x_11); x_48 = lean_box(2); -x_49 = l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__2; +x_49 = l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2; x_50 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_50, 0, x_48); lean_ctor_set(x_50, 1, x_49); @@ -44599,6 +44628,12 @@ l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__2 lean_mark_persistent(l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__2); l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__3 = _init_l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__3(); lean_mark_persistent(l___aux__Init__Notation______macroRules___xabterm___x3c_x3d___xbb__2___closed__3); +l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1 = _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1(); +lean_mark_persistent(l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__1); +l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2 = _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2(); +lean_mark_persistent(l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__2); +l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3 = _init_l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3(); +lean_mark_persistent(l___aux__Init__Notation______macroRules___xabterm___x3d_x3d___xbb__2___closed__3); l_term___x2f_x5c_____closed__1 = _init_l_term___x2f_x5c_____closed__1(); lean_mark_persistent(l_term___x2f_x5c_____closed__1); l_term___x2f_x5c_____closed__2 = _init_l_term___x2f_x5c_____closed__2(); diff --git a/stage0/stdlib/Lean/Compiler.c b/stage0/stdlib/Lean/Compiler.c index 8a91eb28f8..cb0da1dbaf 100644 --- a/stage0/stdlib/Lean/Compiler.c +++ b/stage0/stdlib/Lean/Compiler.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Compiler -// Imports: Init Lean.Compiler.InlineAttrs Lean.Compiler.Specialize Lean.Compiler.ConstFolding Lean.Compiler.ClosedTermCache Lean.Compiler.ExternAttr Lean.Compiler.ImplementedByAttr Lean.Compiler.NeverExtractAttr Lean.Compiler.IR Lean.Compiler.CSimpAttr +// Imports: Init Lean.Compiler.InlineAttrs Lean.Compiler.Specialize Lean.Compiler.ConstFolding Lean.Compiler.ClosedTermCache Lean.Compiler.ExternAttr Lean.Compiler.ImplementedByAttr Lean.Compiler.NeverExtractAttr Lean.Compiler.IR Lean.Compiler.CSimpAttr Lean.Compiler.FFI #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -23,6 +23,7 @@ lean_object* initialize_Lean_Compiler_ImplementedByAttr(lean_object*); lean_object* initialize_Lean_Compiler_NeverExtractAttr(lean_object*); lean_object* initialize_Lean_Compiler_IR(lean_object*); lean_object* initialize_Lean_Compiler_CSimpAttr(lean_object*); +lean_object* initialize_Lean_Compiler_FFI(lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Compiler(lean_object* w) { lean_object * res; @@ -58,6 +59,9 @@ lean_dec_ref(res); res = initialize_Lean_Compiler_CSimpAttr(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Compiler_FFI(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Compiler/FFI.c b/stage0/stdlib/Lean/Compiler/FFI.c new file mode 100644 index 0000000000..c03eeeea33 --- /dev/null +++ b/stage0/stdlib/Lean/Compiler/FFI.c @@ -0,0 +1,248 @@ +// Lean compiler output +// Module: Lean.Compiler.FFI +// Imports: Init +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* lean_get_leanc_extra_flags(lean_object*); +lean_object* lean_mk_empty_array_with_capacity(lean_object*); +lean_object* l_System_FilePath_join(lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_FFI_getLinkerFlags___closed__1; +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__4; +static lean_object* l_Lean_Compiler_FFI_getLinkerFlags___closed__4; +lean_object* lean_array_push(lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__8; +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getCFlags(lean_object*); +lean_object* l_String_splitOn(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Compiler_FFI_0__Lean_Compiler_FFI_getLeancExtraFlags___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getLinkerFlags___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_List_foldl___at_Array_appendList___spec__1___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Compiler_FFI_0__Lean_Compiler_FFI_getBuiltinLinkerFlags___boxed(lean_object*); +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__7; +lean_object* lean_get_linker_flags(uint8_t); +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__5; +lean_object* l_String_trim(lean_object*); +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__3; +static lean_object* l_Lean_Compiler_FFI_getLinkerFlags___closed__2; +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__6; +static lean_object* l_Lean_Compiler_FFI_getLinkerFlags___closed__3; +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getLinkerFlags(lean_object*, uint8_t, lean_object*); +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__1; +static lean_object* l_Lean_Compiler_FFI_getCFlags___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Compiler_FFI_0__Lean_Compiler_FFI_getLeancExtraFlags___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_get_leanc_extra_flags(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("include"); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(2u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("-I"); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Compiler_FFI_getCFlags___closed__2; +x_2 = l_Lean_Compiler_FFI_getCFlags___closed__3; +x_3 = lean_array_push(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_get_leanc_extra_flags(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Compiler_FFI_getCFlags___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(" "); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getCFlags___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Compiler_FFI_getCFlags___closed__6; +x_2 = l_Lean_Compiler_FFI_getCFlags___closed__7; +x_3 = l_String_splitOn(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getCFlags(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_2 = l_Lean_Compiler_FFI_getCFlags___closed__1; +x_3 = l_System_FilePath_join(x_1, x_2); +x_4 = l_Lean_Compiler_FFI_getCFlags___closed__4; +x_5 = lean_array_push(x_4, x_3); +x_6 = l_Lean_Compiler_FFI_getCFlags___closed__8; +x_7 = l_List_foldl___at_Array_appendList___spec__1___rarg(x_5, x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Compiler_FFI_0__Lean_Compiler_FFI_getBuiltinLinkerFlags___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = lean_unbox(x_1); +lean_dec(x_1); +x_3 = lean_get_linker_flags(x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("lib"); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("lean"); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("-L"); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Compiler_FFI_getCFlags___closed__2; +x_2 = l_Lean_Compiler_FFI_getLinkerFlags___closed__3; +x_3 = lean_array_push(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getLinkerFlags(lean_object* x_1, uint8_t x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_4 = l_Lean_Compiler_FFI_getLinkerFlags___closed__1; +x_5 = l_System_FilePath_join(x_1, x_4); +x_6 = l_Lean_Compiler_FFI_getLinkerFlags___closed__2; +x_7 = l_System_FilePath_join(x_5, x_6); +x_8 = l_Lean_Compiler_FFI_getLinkerFlags___closed__4; +x_9 = lean_array_push(x_8, x_7); +x_10 = lean_get_linker_flags(x_2); +x_11 = l_String_trim(x_10); +lean_dec(x_10); +x_12 = l_Lean_Compiler_FFI_getCFlags___closed__7; +x_13 = l_String_splitOn(x_11, x_12); +x_14 = l_List_foldl___at_Array_appendList___spec__1___rarg(x_9, x_13); +x_15 = lean_box(0); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_3); +lean_ctor_set(x_16, 1, x_15); +x_17 = l_List_foldl___at_Array_appendList___spec__1___rarg(x_14, x_16); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_FFI_getLinkerFlags___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = lean_unbox(x_2); +lean_dec(x_2); +x_5 = l_Lean_Compiler_FFI_getLinkerFlags(x_1, x_4, x_3); +return x_5; +} +} +lean_object* initialize_Init(lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Compiler_FFI(lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Compiler_FFI_getCFlags___closed__1 = _init_l_Lean_Compiler_FFI_getCFlags___closed__1(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__1); +l_Lean_Compiler_FFI_getCFlags___closed__2 = _init_l_Lean_Compiler_FFI_getCFlags___closed__2(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__2); +l_Lean_Compiler_FFI_getCFlags___closed__3 = _init_l_Lean_Compiler_FFI_getCFlags___closed__3(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__3); +l_Lean_Compiler_FFI_getCFlags___closed__4 = _init_l_Lean_Compiler_FFI_getCFlags___closed__4(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__4); +l_Lean_Compiler_FFI_getCFlags___closed__5 = _init_l_Lean_Compiler_FFI_getCFlags___closed__5(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__5); +l_Lean_Compiler_FFI_getCFlags___closed__6 = _init_l_Lean_Compiler_FFI_getCFlags___closed__6(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__6); +l_Lean_Compiler_FFI_getCFlags___closed__7 = _init_l_Lean_Compiler_FFI_getCFlags___closed__7(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__7); +l_Lean_Compiler_FFI_getCFlags___closed__8 = _init_l_Lean_Compiler_FFI_getCFlags___closed__8(); +lean_mark_persistent(l_Lean_Compiler_FFI_getCFlags___closed__8); +l_Lean_Compiler_FFI_getLinkerFlags___closed__1 = _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__1(); +lean_mark_persistent(l_Lean_Compiler_FFI_getLinkerFlags___closed__1); +l_Lean_Compiler_FFI_getLinkerFlags___closed__2 = _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__2(); +lean_mark_persistent(l_Lean_Compiler_FFI_getLinkerFlags___closed__2); +l_Lean_Compiler_FFI_getLinkerFlags___closed__3 = _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__3(); +lean_mark_persistent(l_Lean_Compiler_FFI_getLinkerFlags___closed__3); +l_Lean_Compiler_FFI_getLinkerFlags___closed__4 = _init_l_Lean_Compiler_FFI_getLinkerFlags___closed__4(); +lean_mark_persistent(l_Lean_Compiler_FFI_getLinkerFlags___closed__4); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/Attributes.c b/stage0/stdlib/Lean/Elab/Attributes.c index e480cb7280..1ff8060c80 100644 --- a/stage0/stdlib/Lean/Elab/Attributes.c +++ b/stage0/stdlib/Lean/Elab/Attributes.c @@ -884,11 +884,8 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_elabAttr___spec__1___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -923,89 +920,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/Binders.c b/stage0/stdlib/Lean/Elab/Binders.c index 765ed29600..6972cb7486 100644 --- a/stage0/stdlib/Lean/Elab/Binders.c +++ b/stage0/stdlib/Lean/Elab/Binders.c @@ -20376,11 +20376,8 @@ return x_8; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_precheckFun___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -20415,89 +20412,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/BuiltinCommand.c b/stage0/stdlib/Lean/Elab/BuiltinCommand.c index 1c33145bff..b913e83bb3 100644 --- a/stage0/stdlib/Lean/Elab/BuiltinCommand.c +++ b/stage0/stdlib/Lean/Elab/BuiltinCommand.c @@ -20,13 +20,13 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabVariable(lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEvalUnsafe___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveNamespace___at_Lean_Elab_Command_elabExport___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabModuleDoc___closed__8; +static lean_object* l_Lean_Elab_Command_elabCheckCore___closed__3; lean_object* l_Lean_KVMap_setBool(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabSection(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabSection___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Command_elabEval___closed__3; static lean_object* l_Lean_Elab_Command_elabCheckFailure___closed__2; size_t lean_usize_add(size_t, size_t); -static lean_object* l_Lean_Elab_Command_elabCheck___lambda__1___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabSetOption___closed__4; static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunEval___closed__3; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabOpen___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -38,14 +38,16 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Command_elabExport___spec__8___closed__3; lean_object* l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabOpen___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCheckCore___closed__5; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabExport___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_popScopes___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunEval___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabModuleDoc___closed__4; extern lean_object* l_Lean_nullKind; LEAN_EXPORT lean_object* l_Lean_Elab_Command_withNamespace(lean_object*); lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCheck___lambda__1___closed__2; +static lean_object* l_Lean_Elab_Command_elabCheckCore___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabReduce___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); lean_object* l_Lean_Syntax_getOptional_x3f(lean_object*); @@ -59,7 +61,6 @@ static lean_object* l_Lean_Elab_Command_elabReduce___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabNamespace___closed__1; lean_object* l_Array_append___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabVariable___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkEvalInstCore___closed__10; lean_object* l_List_mapTRAux___at_Lean_resolveGlobalConstCore___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Command_elabOpen___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -69,9 +70,11 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabExport___s static lean_object* l___regBuiltin_Lean_Elab_Command_elabSetOption___closed__1; static lean_object* l_Lean_Elab_Command_elabModuleDoc___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEval___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabEnd___lambda__1___closed__4; lean_object* l_Lean_SourceInfo_fromRef(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabVariable___spec__4___boxed__const__1; +static lean_object* l_Lean_Elab_Command_elabCheckCore___closed__1; extern lean_object* l_Lean_Elab_Command_commandElabAttribute; LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoLeaf___at_Lean_Elab_Command_elabEnd___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); @@ -82,7 +85,6 @@ lean_object* l_Lean_Option_get___at_Lean_initFn____x40_Lean_Util_PPExt___hyg_245 LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabExport___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabVariable___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabExport___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabExport___closed__4; lean_object* l_Std_PersistentArray_mapM___at_Lean_MessageLog_errorsToWarnings___spec__1(lean_object*); static lean_object* l_Lean_Elab_Command_elabSection___closed__1; @@ -174,7 +176,6 @@ lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabReduce___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkDecide(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckFailure(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCheck___closed__3; static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__2___closed__5; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabOpen___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabCheckFailure___closed__1; @@ -182,6 +183,7 @@ lean_object* l_Lean_throwError___at_Lean_Elab_Term_throwErrorIfErrors___spec__1( LEAN_EXPORT lean_object* l___private_Lean_Elab_Open_0__Lean_Elab_OpenDecl_elabOpenScoped___at_Lean_Elab_Command_elabOpen___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_addScope___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_maxRecDepth; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabEval___rarg___closed__2; LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstCore___at_Lean_Elab_Command_elabExport___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); @@ -207,13 +209,11 @@ lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_matchBinderNames___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunMetaEval___closed__2; -static lean_object* l_Lean_Elab_Command_elabCheck___closed__1; lean_object* l_Lean_Elab_Term_levelMVarToParam(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_addScopes(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEvalUnsafe___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_setEnv___at_Lean_Elab_Command_expandDeclId___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCheck___closed__5; lean_object* lean_st_ref_take(lean_object*, lean_object*); lean_object* l_Lean_getOptionDecl(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunMetaEval___closed__1; @@ -224,7 +224,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_elabVariable___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEvalUnsafe(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCheck___closed__2; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_matchBinderNames___spec__4(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstCore___at_Lean_Elab_Command_elabExport___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_isStrLit_x3f(lean_object*); @@ -287,6 +286,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabExport___s LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabNamespace___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Open_0__Lean_Elab_OpenDecl_elabOpenRenaming___at_Lean_Elab_Command_elabOpen___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Command_elabOpen___spec__1___closed__9; static lean_object* l___regBuiltin_Lean_Elab_Command_expandInCmd___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elbChoice(lean_object*); @@ -301,7 +301,6 @@ lean_object* l_Lean_setEnv___at_Lean_Elab_Term_evalExpr___spec__1(lean_object*, LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstNoOverloadCore___at_Lean_Elab_Command_elabExport___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_OpenDecl_resolveOpenDeclId___at_Lean_Elab_Command_elabExport___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabSynth___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_getNumParts(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_hasNoErrorMessages(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabOpen___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -338,7 +337,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Built lean_object* l_Lean_Elab_Command_elabCommand(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__2___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabSection___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_activateScoped___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_addScope___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunEval___closed__2; lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); @@ -389,7 +387,6 @@ static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_ma lean_object* l_Lean_Elab_Term_resetMessageLog(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_filterAux___at_Lean_resolveGlobalConstCore___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_failIfSucceeds___closed__1; -static lean_object* l_Lean_Elab_Command_elabCheck___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabNamespace___spec__1___rarg(lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_typelessBinder_x3f___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabOpen___spec__13(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -460,6 +457,7 @@ lean_object* l_Lean_KVMap_insertCore(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInCmd___closed__4; static lean_object* l_Lean_Elab_Command_elabEvalUnsafe___closed__4; lean_object* l_Lean_Syntax_getOptionalIdent_x3f(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunMetaEval___lambda__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_addScope(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunEval___closed__1; @@ -470,12 +468,14 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabOpen(lean_object*) LEAN_EXPORT lean_object* l_Lean_Elab_Command_withNamespace___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_addScope___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabCheck___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabExport___spec__12(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_matchBinderNames___spec__1(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_resolveGlobalConstNoOverloadCore___at_Lean_Elab_Command_elabExport___spec__5___closed__1; lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabNamespace___closed__2; +static lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2; uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInCmd___boxed(lean_object*, lean_object*, lean_object*); @@ -511,6 +511,7 @@ static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCom lean_object* l_Lean_indentD(lean_object*); extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; LEAN_EXPORT lean_object* l___private_Lean_Elab_Open_0__Lean_Elab_OpenDecl_addOpenDecl___at_Lean_Elab_Command_elabOpen___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1; lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabEval(lean_object*); lean_object* l_Lean_Elab_Term_addAutoBoundImplicits(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -544,6 +545,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_elabSetOption_setOption___at_Lean_Elab_Comm LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEnd___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__2___closed__4; LEAN_EXPORT lean_object* l_Lean_MonadQuotation_addMacroScope___at_Lean_Elab_Command_elabVariable___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCheckCore___closed__4; static lean_object* l_Lean_Elab_Command_elabEnd___lambda__1___closed__1; lean_object* l_List_toString___at_Lean_resolveGlobalConstNoOverloadCore___spec__2(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_mkRunEval(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -10170,7 +10172,7 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___lambda__1___closed__1() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1() { _start: { lean_object* x_1; @@ -10178,278 +10180,504 @@ x_1 = lean_mk_string(" : "); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___lambda__1___closed__2() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCheck___lambda__1___closed__1; +x_1 = l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -uint8_t x_11; lean_object* x_12; -x_11 = 1; +uint8_t x_12; lean_object* x_13; +x_12 = 1; +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_4); -x_12 = l_Lean_Elab_Term_elabTerm(x_1, x_2, x_11, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_12) == 0) +x_13 = l_Lean_Elab_Term_elabTerm(x_1, x_2, x_12, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); +lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); -lean_dec(x_12); -x_15 = 0; -x_16 = lean_box(0); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = 0; +x_17 = lean_box(0); +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_4); -x_17 = l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(x_15, x_11, x_16, x_4, x_5, x_6, x_7, x_8, x_9, x_14); -if (lean_obj_tag(x_17) == 0) +x_18 = l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(x_16, x_3, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_17, 1); -lean_inc(x_18); -lean_dec(x_17); +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -lean_inc(x_6); -x_19 = l_Lean_Meta_instantiateMVars(x_13, x_6, x_7, x_8, x_9, x_18); -if (lean_obj_tag(x_19) == 0) +x_20 = l_Lean_Meta_instantiateMVars(x_14, x_7, x_8, x_9, x_10, x_19); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); -x_21 = lean_ctor_get(x_19, 1); +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_21 = lean_ctor_get(x_20, 0); lean_inc(x_21); -lean_dec(x_19); -x_22 = lean_unsigned_to_nat(1u); -x_23 = l_Lean_Elab_Term_levelMVarToParam(x_20, x_22, x_4, x_5, x_6, x_7, x_8, x_9, x_21); -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_unsigned_to_nat(1u); +x_24 = l_Lean_Elab_Term_levelMVarToParam(x_21, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_22); +x_25 = lean_ctor_get(x_24, 0); lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_ctor_get(x_24, 0); +x_26 = lean_ctor_get(x_24, 1); lean_inc(x_26); lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +lean_dec(x_25); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_27); +x_28 = lean_infer_type(x_27, x_7, x_8, x_9, x_10, x_26); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_28, 0); +x_31 = lean_ctor_get(x_28, 1); +x_32 = l_Lean_Expr_isSyntheticSorry(x_27); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; +lean_free_object(x_28); +x_33 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_33, 0, x_27); +x_34 = l_Lean_Elab_Command_elabModuleDoc___closed__4; +x_35 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_33); +x_36 = l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2; +x_37 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +x_38 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_38, 0, x_30); +x_39 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +x_40 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_34); +x_41 = 0; +x_42 = l_Lean_Elab_logAt___at_Lean_Elab_Term_traceAtCmdPos___spec__3(x_4, x_40, x_41, x_5, x_6, x_7, x_8, x_9, x_10, x_31); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_42; +} +else +{ +lean_dec(x_30); +lean_dec(x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_ctor_set(x_28, 0, x_17); +return x_28; +} +} +else +{ +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = lean_ctor_get(x_28, 0); +x_44 = lean_ctor_get(x_28, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_28); +x_45 = l_Lean_Expr_isSyntheticSorry(x_27); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; +x_46 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_46, 0, x_27); +x_47 = l_Lean_Elab_Command_elabModuleDoc___closed__4; +x_48 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +x_49 = l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2; +x_50 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +x_51 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_51, 0, x_43); +x_52 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +x_53 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_47); +x_54 = 0; +x_55 = l_Lean_Elab_logAt___at_Lean_Elab_Term_traceAtCmdPos___spec__3(x_4, x_53, x_54, x_5, x_6, x_7, x_8, x_9, x_10, x_44); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_55; +} +else +{ +lean_object* x_56; +lean_dec(x_43); +lean_dec(x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_17); +lean_ctor_set(x_56, 1, x_44); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_dec(x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_57 = !lean_is_exclusive(x_28); +if (x_57 == 0) +{ +return x_28; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_28, 0); +x_59 = lean_ctor_get(x_28, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_28); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_61 = !lean_is_exclusive(x_20); +if (x_61 == 0) +{ +return x_20; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_20, 0); +x_63 = lean_ctor_get(x_20, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_20); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +return x_64; +} +} +} +else +{ +uint8_t x_65; +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_65 = !lean_is_exclusive(x_18); +if (x_65 == 0) +{ +return x_18; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_66 = lean_ctor_get(x_18, 0); +x_67 = lean_ctor_get(x_18, 1); +lean_inc(x_67); +lean_inc(x_66); +lean_dec(x_18); +x_68 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +return x_68; +} +} +} +else +{ +uint8_t x_69; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_69 = !lean_is_exclusive(x_13); +if (x_69 == 0) +{ +return x_13; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_13, 0); +x_71 = lean_ctor_get(x_13, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_13); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +return x_72; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__2(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_13 = 0; +x_14 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_26); -x_27 = lean_infer_type(x_26, x_6, x_7, x_8, x_9, x_25); -if (lean_obj_tag(x_27) == 0) +x_15 = l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(x_13, x_13, x_14, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_15) == 0) { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_27, 0); -x_30 = lean_ctor_get(x_27, 1); -x_31 = l_Lean_Expr_isSyntheticSorry(x_26); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; lean_object* x_41; -lean_free_object(x_27); -x_32 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_32, 0, x_26); -x_33 = l_Lean_Elab_Command_elabModuleDoc___closed__4; -x_34 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_32); -x_35 = l_Lean_Elab_Command_elabCheck___lambda__1___closed__2; -x_36 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -x_37 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_37, 0, x_29); -x_38 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_38, 0, x_36); -lean_ctor_set(x_38, 1, x_37); -x_39 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_33); -x_40 = 0; -x_41 = l_Lean_Elab_logAt___at_Lean_Elab_Term_traceAtCmdPos___spec__3(x_3, x_39, x_40, x_4, x_5, x_6, x_7, x_8, x_9, x_30); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -return x_41; -} -else -{ -lean_dec(x_29); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; size_t x_24; size_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = lean_box(0); +x_18 = lean_array_get_size(x_5); +x_19 = lean_unsigned_to_nat(0u); +lean_inc(x_5); +x_20 = l_Array_toSubarray___rarg(x_5, x_19, x_18); +x_21 = lean_ctor_get(x_1, 6); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_17); +x_23 = lean_array_get_size(x_21); +x_24 = lean_usize_of_nat(x_23); +lean_dec(x_23); +x_25 = 0; +x_26 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runTermElabM___spec__1(x_21, x_24, x_25, x_22, x_6, x_7, x_8, x_9, x_10, x_11, x_16); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); lean_dec(x_26); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_ctor_set(x_27, 0, x_16); -return x_27; -} +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = !lean_is_exclusive(x_6); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_6, 7); +lean_dec(x_31); +lean_ctor_set(x_6, 7, x_29); +x_32 = l_Lean_Elab_Term_resetMessageLog(x_6, x_7, x_8, x_9, x_10, x_11, x_28); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +lean_inc(x_10); +lean_inc(x_8); +lean_inc(x_6); +x_34 = l_Lean_Elab_Term_addAutoBoundImplicits(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_33); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_box(0); +x_37 = lean_box(x_3); +x_38 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheckCore___lambda__1___boxed), 11, 4); +lean_closure_set(x_38, 0, x_2); +lean_closure_set(x_38, 1, x_36); +lean_closure_set(x_38, 2, x_37); +lean_closure_set(x_38, 3, x_4); +x_39 = l_Lean_Elab_Term_withoutAutoBoundImplicit___rarg(x_38, x_6, x_7, x_8, x_9, x_10, x_11, x_35); +return x_39; } else { -lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_42 = lean_ctor_get(x_27, 0); -x_43 = lean_ctor_get(x_27, 1); -lean_inc(x_43); +uint8_t x_40; +lean_dec(x_6); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_2); +x_40 = !lean_is_exclusive(x_34); +if (x_40 == 0) +{ +return x_34; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_34, 0); +x_42 = lean_ctor_get(x_34, 1); lean_inc(x_42); -lean_dec(x_27); -x_44 = l_Lean_Expr_isSyntheticSorry(x_26); -if (x_44 == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; -x_45 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_45, 0, x_26); -x_46 = l_Lean_Elab_Command_elabModuleDoc___closed__4; -x_47 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_45); -x_48 = l_Lean_Elab_Command_elabCheck___lambda__1___closed__2; -x_49 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -x_50 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_50, 0, x_42); -x_51 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_51, 0, x_49); -lean_ctor_set(x_51, 1, x_50); -x_52 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_46); -x_53 = 0; -x_54 = l_Lean_Elab_logAt___at_Lean_Elab_Term_traceAtCmdPos___spec__3(x_3, x_52, x_53, x_4, x_5, x_6, x_7, x_8, x_9, x_43); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -return x_54; -} -else -{ -lean_object* x_55; -lean_dec(x_42); -lean_dec(x_26); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_16); -lean_ctor_set(x_55, 1, x_43); -return x_55; +lean_inc(x_41); +lean_dec(x_34); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; } } } else { -uint8_t x_56; -lean_dec(x_26); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_44 = lean_ctor_get(x_6, 0); +x_45 = lean_ctor_get(x_6, 1); +x_46 = lean_ctor_get(x_6, 2); +x_47 = lean_ctor_get(x_6, 3); +x_48 = lean_ctor_get(x_6, 4); +x_49 = lean_ctor_get_uint8(x_6, sizeof(void*)*8); +x_50 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 1); +x_51 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 2); +x_52 = lean_ctor_get(x_6, 5); +x_53 = lean_ctor_get(x_6, 6); +x_54 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +lean_inc(x_53); +lean_inc(x_52); +lean_inc(x_48); +lean_inc(x_47); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_56 = !lean_is_exclusive(x_27); -if (x_56 == 0) -{ -return x_27; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_27, 0); -x_58 = lean_ctor_get(x_27, 1); -lean_inc(x_58); +x_55 = lean_alloc_ctor(0, 8, 4); +lean_ctor_set(x_55, 0, x_44); +lean_ctor_set(x_55, 1, x_45); +lean_ctor_set(x_55, 2, x_46); +lean_ctor_set(x_55, 3, x_47); +lean_ctor_set(x_55, 4, x_48); +lean_ctor_set(x_55, 5, x_52); +lean_ctor_set(x_55, 6, x_53); +lean_ctor_set(x_55, 7, x_29); +lean_ctor_set_uint8(x_55, sizeof(void*)*8, x_49); +lean_ctor_set_uint8(x_55, sizeof(void*)*8 + 1, x_50); +lean_ctor_set_uint8(x_55, sizeof(void*)*8 + 2, x_51); +lean_ctor_set_uint8(x_55, sizeof(void*)*8 + 3, x_54); +x_56 = l_Lean_Elab_Term_resetMessageLog(x_55, x_7, x_8, x_9, x_10, x_11, x_28); +x_57 = lean_ctor_get(x_56, 1); lean_inc(x_57); -lean_dec(x_27); -x_59 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -return x_59; -} -} -} -else +lean_dec(x_56); +lean_inc(x_10); +lean_inc(x_8); +lean_inc(x_55); +x_58 = l_Lean_Elab_Term_addAutoBoundImplicits(x_5, x_55, x_7, x_8, x_9, x_10, x_11, x_57); +if (lean_obj_tag(x_58) == 0) { -uint8_t x_60; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_60 = !lean_is_exclusive(x_19); -if (x_60 == 0) -{ -return x_19; -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_61 = lean_ctor_get(x_19, 0); -x_62 = lean_ctor_get(x_19, 1); -lean_inc(x_62); -lean_inc(x_61); -lean_dec(x_19); -x_63 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +x_60 = lean_box(0); +x_61 = lean_box(x_3); +x_62 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheckCore___lambda__1___boxed), 11, 4); +lean_closure_set(x_62, 0, x_2); +lean_closure_set(x_62, 1, x_60); +lean_closure_set(x_62, 2, x_61); +lean_closure_set(x_62, 3, x_4); +x_63 = l_Lean_Elab_Term_withoutAutoBoundImplicit___rarg(x_62, x_55, x_7, x_8, x_9, x_10, x_11, x_59); return x_63; } -} -} else { -uint8_t x_64; -lean_dec(x_13); +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_55); +lean_dec(x_11); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); lean_dec(x_4); -x_64 = !lean_is_exclusive(x_17); -if (x_64 == 0) -{ -return x_17; -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_17, 0); -x_66 = lean_ctor_get(x_17, 1); -lean_inc(x_66); +lean_dec(x_2); +x_64 = lean_ctor_get(x_58, 0); +lean_inc(x_64); +x_65 = lean_ctor_get(x_58, 1); lean_inc(x_65); -lean_dec(x_17); -x_67 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); +if (lean_is_exclusive(x_58)) { + lean_ctor_release(x_58, 0); + lean_ctor_release(x_58, 1); + x_66 = x_58; +} else { + lean_dec_ref(x_58); + x_66 = lean_box(0); +} +if (lean_is_scalar(x_66)) { + x_67 = lean_alloc_ctor(1, 2, 0); +} else { + x_67 = x_66; +} +lean_ctor_set(x_67, 0, x_64); +lean_ctor_set(x_67, 1, x_65); return x_67; } } @@ -10457,25 +10685,28 @@ return x_67; else { uint8_t x_68; +lean_dec(x_11); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_68 = !lean_is_exclusive(x_12); +lean_dec(x_2); +x_68 = !lean_is_exclusive(x_15); if (x_68 == 0) { -return x_12; +return x_15; } else { lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_69 = lean_ctor_get(x_12, 0); -x_70 = lean_ctor_get(x_12, 1); +x_69 = lean_ctor_get(x_15, 0); +x_70 = lean_ctor_get(x_15, 1); lean_inc(x_70); lean_inc(x_69); -lean_dec(x_12); +lean_dec(x_15); x_71 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_71, 0, x_69); lean_ctor_set(x_71, 1, x_70); @@ -10484,232 +10715,7 @@ return x_71; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -uint8_t x_12; lean_object* x_13; lean_object* x_14; -x_12 = 0; -x_13 = lean_box(0); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_14 = l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(x_12, x_12, x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_15 = lean_ctor_get(x_14, 1); -lean_inc(x_15); -lean_dec(x_14); -x_16 = lean_box(0); -x_17 = lean_array_get_size(x_4); -x_18 = lean_unsigned_to_nat(0u); -lean_inc(x_4); -x_19 = l_Array_toSubarray___rarg(x_4, x_18, x_17); -x_20 = lean_ctor_get(x_1, 6); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_16); -x_22 = lean_array_get_size(x_20); -x_23 = lean_usize_of_nat(x_22); -lean_dec(x_22); -x_24 = 0; -x_25 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runTermElabM___spec__1(x_20, x_23, x_24, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_15); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -x_27 = lean_ctor_get(x_25, 1); -lean_inc(x_27); -lean_dec(x_25); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = !lean_is_exclusive(x_5); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_30 = lean_ctor_get(x_5, 7); -lean_dec(x_30); -lean_ctor_set(x_5, 7, x_28); -x_31 = l_Lean_Elab_Term_resetMessageLog(x_5, x_6, x_7, x_8, x_9, x_10, x_27); -x_32 = lean_ctor_get(x_31, 1); -lean_inc(x_32); -lean_dec(x_31); -lean_inc(x_9); -lean_inc(x_7); -lean_inc(x_5); -x_33 = l_Lean_Elab_Term_addAutoBoundImplicits(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_32); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_33, 1); -lean_inc(x_34); -lean_dec(x_33); -x_35 = lean_box(0); -x_36 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheck___lambda__1___boxed), 10, 3); -lean_closure_set(x_36, 0, x_2); -lean_closure_set(x_36, 1, x_35); -lean_closure_set(x_36, 2, x_3); -x_37 = l_Lean_Elab_Term_withoutAutoBoundImplicit___rarg(x_36, x_5, x_6, x_7, x_8, x_9, x_10, x_34); -return x_37; -} -else -{ -uint8_t x_38; -lean_dec(x_5); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -x_38 = !lean_is_exclusive(x_33); -if (x_38 == 0) -{ -return x_33; -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_33, 0); -x_40 = lean_ctor_get(x_33, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_33); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; -} -} -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_42 = lean_ctor_get(x_5, 0); -x_43 = lean_ctor_get(x_5, 1); -x_44 = lean_ctor_get(x_5, 2); -x_45 = lean_ctor_get(x_5, 3); -x_46 = lean_ctor_get(x_5, 4); -x_47 = lean_ctor_get_uint8(x_5, sizeof(void*)*8); -x_48 = lean_ctor_get_uint8(x_5, sizeof(void*)*8 + 1); -x_49 = lean_ctor_get_uint8(x_5, sizeof(void*)*8 + 2); -x_50 = lean_ctor_get(x_5, 5); -x_51 = lean_ctor_get(x_5, 6); -x_52 = lean_ctor_get_uint8(x_5, sizeof(void*)*8 + 3); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_46); -lean_inc(x_45); -lean_inc(x_44); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_5); -x_53 = lean_alloc_ctor(0, 8, 4); -lean_ctor_set(x_53, 0, x_42); -lean_ctor_set(x_53, 1, x_43); -lean_ctor_set(x_53, 2, x_44); -lean_ctor_set(x_53, 3, x_45); -lean_ctor_set(x_53, 4, x_46); -lean_ctor_set(x_53, 5, x_50); -lean_ctor_set(x_53, 6, x_51); -lean_ctor_set(x_53, 7, x_28); -lean_ctor_set_uint8(x_53, sizeof(void*)*8, x_47); -lean_ctor_set_uint8(x_53, sizeof(void*)*8 + 1, x_48); -lean_ctor_set_uint8(x_53, sizeof(void*)*8 + 2, x_49); -lean_ctor_set_uint8(x_53, sizeof(void*)*8 + 3, x_52); -x_54 = l_Lean_Elab_Term_resetMessageLog(x_53, x_6, x_7, x_8, x_9, x_10, x_27); -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -lean_dec(x_54); -lean_inc(x_9); -lean_inc(x_7); -lean_inc(x_53); -x_56 = l_Lean_Elab_Term_addAutoBoundImplicits(x_4, x_53, x_6, x_7, x_8, x_9, x_10, x_55); -if (lean_obj_tag(x_56) == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_57 = lean_ctor_get(x_56, 1); -lean_inc(x_57); -lean_dec(x_56); -x_58 = lean_box(0); -x_59 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheck___lambda__1___boxed), 10, 3); -lean_closure_set(x_59, 0, x_2); -lean_closure_set(x_59, 1, x_58); -lean_closure_set(x_59, 2, x_3); -x_60 = l_Lean_Elab_Term_withoutAutoBoundImplicit___rarg(x_59, x_53, x_6, x_7, x_8, x_9, x_10, x_57); -return x_60; -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -lean_dec(x_53); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -x_61 = lean_ctor_get(x_56, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_56, 1); -lean_inc(x_62); -if (lean_is_exclusive(x_56)) { - lean_ctor_release(x_56, 0); - lean_ctor_release(x_56, 1); - x_63 = x_56; -} else { - lean_dec_ref(x_56); - x_63 = lean_box(0); -} -if (lean_is_scalar(x_63)) { - x_64 = lean_alloc_ctor(1, 2, 0); -} else { - x_64 = x_63; -} -lean_ctor_set(x_64, 0, x_61); -lean_ctor_set(x_64, 1, x_62); -return x_64; -} -} -} -else -{ -uint8_t x_65; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_65 = !lean_is_exclusive(x_14); -if (x_65 == 0) -{ -return x_14; -} -else -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_14, 0); -x_67 = lean_ctor_get(x_14, 1); -lean_inc(x_67); -lean_inc(x_66); -lean_dec(x_14); -x_68 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -return x_68; -} -} -} -} -static lean_object* _init_l_Lean_Elab_Command_elabCheck___closed__1() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___closed__1() { _start: { lean_object* x_1; @@ -10717,17 +10723,17 @@ x_1 = lean_mk_string("check"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___closed__2() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___regBuiltin_Lean_Elab_Command_elabModuleDoc___closed__6; -x_2 = l_Lean_Elab_Command_elabCheck___closed__1; +x_2 = l_Lean_Elab_Command_elabCheckCore___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___closed__3() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___closed__3() { _start: { lean_object* x_1; @@ -10735,160 +10741,186 @@ x_1 = lean_mk_string("_check"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___closed__4() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Command_elabCheck___closed__3; +x_2 = l_Lean_Elab_Command_elabCheckCore___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_elabCheck___closed__5() { +static lean_object* _init_l_Lean_Elab_Command_elabCheckCore___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCheck___closed__4; +x_1 = l_Lean_Elab_Command_elabCheckCore___closed__4; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; uint8_t x_7; +x_6 = l_Lean_Elab_Command_elabCheckCore___closed__2; +lean_inc(x_2); +x_7 = l_Lean_Syntax_isOfKind(x_2, x_6); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_3); +lean_dec(x_2); +x_8 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabNamespace___spec__1___rarg(x_5); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_9 = lean_unsigned_to_nat(0u); +x_10 = l_Lean_Syntax_getArg(x_2, x_9); +x_11 = lean_unsigned_to_nat(1u); +x_12 = l_Lean_Syntax_getArg(x_2, x_11); +lean_dec(x_2); +x_13 = lean_st_ref_get(x_4, x_5); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Lean_Elab_Command_getScope___rarg(x_4, x_15); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_ctor_get(x_18, 5); +lean_inc(x_20); +x_21 = lean_box(x_1); +x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheckCore___lambda__2___boxed), 12, 4); +lean_closure_set(x_22, 0, x_18); +lean_closure_set(x_22, 1, x_12); +lean_closure_set(x_22, 2, x_21); +lean_closure_set(x_22, 3, x_10); +x_23 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2); +lean_closure_set(x_23, 0, x_20); +lean_closure_set(x_23, 1, x_22); +x_24 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); +lean_closure_set(x_24, 0, x_23); +x_25 = l_Lean_Elab_Command_elabCheckCore___closed__5; +lean_inc(x_3); +x_26 = l_Lean_Elab_Command_liftTermElabM___rarg(x_25, x_24, x_3, x_4, x_19); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = l_Lean_setEnv___at_Lean_Elab_Command_expandDeclId___spec__7(x_16, x_3, x_4, x_28); +lean_dec(x_3); +x_30 = !lean_is_exclusive(x_29); +if (x_30 == 0) +{ +lean_object* x_31; +x_31 = lean_ctor_get(x_29, 0); +lean_dec(x_31); +lean_ctor_set(x_29, 0, x_27); +return x_29; +} +else +{ +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_29, 1); +lean_inc(x_32); +lean_dec(x_29); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_27); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_34 = lean_ctor_get(x_26, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_26, 1); +lean_inc(x_35); +lean_dec(x_26); +x_36 = l_Lean_setEnv___at_Lean_Elab_Command_expandDeclId___spec__7(x_16, x_3, x_4, x_35); +lean_dec(x_3); +x_37 = !lean_is_exclusive(x_36); +if (x_37 == 0) +{ +lean_object* x_38; +x_38 = lean_ctor_get(x_36, 0); +lean_dec(x_38); +lean_ctor_set_tag(x_36, 1); +lean_ctor_set(x_36, 0, x_34); +return x_36; +} +else +{ +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +lean_dec(x_36); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_34); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; lean_object* x_13; +x_12 = lean_unbox(x_3); +lean_dec(x_3); +x_13 = l_Lean_Elab_Command_elabCheckCore___lambda__1(x_1, x_2, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_4); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; lean_object* x_14; +x_13 = lean_unbox(x_3); +lean_dec(x_3); +x_14 = l_Lean_Elab_Command_elabCheckCore___lambda__2(x_1, x_2, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheckCore___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; lean_object* x_7; +x_6 = lean_unbox(x_1); +lean_dec(x_1); +x_7 = l_Lean_Elab_Command_elabCheckCore(x_6, x_2, x_3, x_4, x_5); +lean_dec(x_4); +return x_7; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; uint8_t x_6; -x_5 = l_Lean_Elab_Command_elabCheck___closed__2; -lean_inc(x_1); -x_6 = l_Lean_Syntax_isOfKind(x_1, x_5); -if (x_6 == 0) -{ -lean_object* x_7; -lean_dec(x_2); -lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabNamespace___spec__1___rarg(x_4); -return x_7; -} -else -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_8 = lean_unsigned_to_nat(0u); -x_9 = l_Lean_Syntax_getArg(x_1, x_8); -x_10 = lean_unsigned_to_nat(1u); -x_11 = l_Lean_Syntax_getArg(x_1, x_10); -lean_dec(x_1); -x_12 = lean_st_ref_get(x_3, x_4); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_ctor_get(x_13, 0); -lean_inc(x_15); -lean_dec(x_13); -x_16 = l_Lean_Elab_Command_getScope___rarg(x_3, x_14); -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_ctor_get(x_17, 5); -lean_inc(x_19); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheck___lambda__2___boxed), 11, 3); -lean_closure_set(x_20, 0, x_17); -lean_closure_set(x_20, 1, x_11); -lean_closure_set(x_20, 2, x_9); -x_21 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBinders___rarg), 9, 2); -lean_closure_set(x_21, 0, x_19); -lean_closure_set(x_21, 1, x_20); -x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); -lean_closure_set(x_22, 0, x_21); -x_23 = l_Lean_Elab_Command_elabCheck___closed__5; -lean_inc(x_2); -x_24 = l_Lean_Elab_Command_liftTermElabM___rarg(x_23, x_22, x_2, x_3, x_18); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Lean_setEnv___at_Lean_Elab_Command_expandDeclId___spec__7(x_15, x_2, x_3, x_26); -lean_dec(x_2); -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) -{ -lean_object* x_29; -x_29 = lean_ctor_get(x_27, 0); -lean_dec(x_29); -lean_ctor_set(x_27, 0, x_25); -return x_27; -} -else -{ -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -lean_dec(x_27); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_25); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_32 = lean_ctor_get(x_24, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_24, 1); -lean_inc(x_33); -lean_dec(x_24); -x_34 = l_Lean_setEnv___at_Lean_Elab_Command_expandDeclId___spec__7(x_15, x_2, x_3, x_33); -lean_dec(x_2); -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 0) -{ -lean_object* x_36; -x_36 = lean_ctor_get(x_34, 0); -lean_dec(x_36); -lean_ctor_set_tag(x_34, 1); -lean_ctor_set(x_34, 0, x_32); -return x_34; -} -else -{ -lean_object* x_37; lean_object* x_38; -x_37 = lean_ctor_get(x_34, 1); -lean_inc(x_37); -lean_dec(x_34); -x_38 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_38, 0, x_32); -lean_ctor_set(x_38, 1, x_37); -return x_38; -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_Lean_Elab_Command_elabCheck___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_3); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; -x_12 = l_Lean_Elab_Command_elabCheck___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_1); -return x_12; +uint8_t x_5; lean_object* x_6; +x_5 = 1; +x_6 = l_Lean_Elab_Command_elabCheckCore(x_5, x_1, x_2, x_3, x_4); +return x_6; } } LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCheck___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { @@ -10931,7 +10963,7 @@ _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_2 = l_Lean_Elab_Command_commandElabAttribute; -x_3 = l_Lean_Elab_Command_elabCheck___closed__2; +x_3 = l_Lean_Elab_Command_elabCheckCore___closed__2; x_4 = l___regBuiltin_Lean_Elab_Command_elabCheck___closed__2; x_5 = l___regBuiltin_Lean_Elab_Command_elabCheck___closed__3; x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); @@ -11711,7 +11743,7 @@ lean_closure_set(x_21, 0, x_19); lean_closure_set(x_21, 1, x_20); x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); lean_closure_set(x_22, 0, x_21); -x_23 = l_Lean_Elab_Command_elabCheck___closed__5; +x_23 = l_Lean_Elab_Command_elabCheckCore___closed__5; lean_inc(x_2); x_24 = l_Lean_Elab_Command_liftTermElabM___rarg(x_23, x_22, x_2, x_3, x_18); if (lean_obj_tag(x_24) == 0) @@ -12732,7 +12764,7 @@ return x_7; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; x_8 = lean_unsigned_to_nat(1u); x_9 = l_Lean_Syntax_getArg(x_1, x_8); lean_dec(x_1); @@ -12758,15 +12790,18 @@ x_19 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_ x_20 = lean_array_push(x_19, x_18); x_21 = lean_array_push(x_20, x_9); x_22 = lean_box(2); -x_23 = l_Lean_Elab_Command_elabCheck___closed__2; +x_23 = l_Lean_Elab_Command_elabCheckCore___closed__2; x_24 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_24, 0, x_22); lean_ctor_set(x_24, 1, x_23); lean_ctor_set(x_24, 2, x_21); -x_25 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheck___boxed), 4, 1); -lean_closure_set(x_25, 0, x_24); -x_26 = l_Lean_Elab_Command_failIfSucceeds(x_25, x_2, x_3, x_16); -return x_26; +x_25 = 0; +x_26 = lean_box(x_25); +x_27 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCheckCore___boxed), 5, 2); +lean_closure_set(x_27, 0, x_26); +lean_closure_set(x_27, 1, x_24); +x_28 = l_Lean_Elab_Command_failIfSucceeds(x_27, x_2, x_3, x_16); +return x_28; } } } @@ -17372,20 +17407,20 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_elabVariable___closed__3); res = l___regBuiltin_Lean_Elab_Command_elabVariable(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Elab_Command_elabCheck___lambda__1___closed__1 = _init_l_Lean_Elab_Command_elabCheck___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___lambda__1___closed__1); -l_Lean_Elab_Command_elabCheck___lambda__1___closed__2 = _init_l_Lean_Elab_Command_elabCheck___lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___lambda__1___closed__2); -l_Lean_Elab_Command_elabCheck___closed__1 = _init_l_Lean_Elab_Command_elabCheck___closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___closed__1); -l_Lean_Elab_Command_elabCheck___closed__2 = _init_l_Lean_Elab_Command_elabCheck___closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___closed__2); -l_Lean_Elab_Command_elabCheck___closed__3 = _init_l_Lean_Elab_Command_elabCheck___closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___closed__3); -l_Lean_Elab_Command_elabCheck___closed__4 = _init_l_Lean_Elab_Command_elabCheck___closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___closed__4); -l_Lean_Elab_Command_elabCheck___closed__5 = _init_l_Lean_Elab_Command_elabCheck___closed__5(); -lean_mark_persistent(l_Lean_Elab_Command_elabCheck___closed__5); +l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1 = _init_l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__1); +l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2 = _init_l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___lambda__1___closed__2); +l_Lean_Elab_Command_elabCheckCore___closed__1 = _init_l_Lean_Elab_Command_elabCheckCore___closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___closed__1); +l_Lean_Elab_Command_elabCheckCore___closed__2 = _init_l_Lean_Elab_Command_elabCheckCore___closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___closed__2); +l_Lean_Elab_Command_elabCheckCore___closed__3 = _init_l_Lean_Elab_Command_elabCheckCore___closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___closed__3); +l_Lean_Elab_Command_elabCheckCore___closed__4 = _init_l_Lean_Elab_Command_elabCheckCore___closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___closed__4); +l_Lean_Elab_Command_elabCheckCore___closed__5 = _init_l_Lean_Elab_Command_elabCheckCore___closed__5(); +lean_mark_persistent(l_Lean_Elab_Command_elabCheckCore___closed__5); l___regBuiltin_Lean_Elab_Command_elabCheck___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_elabCheck___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_elabCheck___closed__1); l___regBuiltin_Lean_Elab_Command_elabCheck___closed__2 = _init_l___regBuiltin_Lean_Elab_Command_elabCheck___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/BuiltinNotation.c b/stage0/stdlib/Lean/Elab/BuiltinNotation.c index c994aae502..dc2ff8afea 100644 --- a/stage0/stdlib/Lean/Elab/BuiltinNotation.c +++ b/stage0/stdlib/Lean/Elab/BuiltinNotation.c @@ -11729,11 +11729,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_elabCDotFunctionAlias_x3f___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -11768,89 +11765,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -12133,7 +12172,6 @@ lean_object* x_9; lean_object* x_10; uint8_t x_11; x_9 = lean_array_fget(x_3, x_5); x_10 = lean_array_fget(x_4, x_5); x_11 = l_Lean_Syntax_structEq(x_9, x_10); -lean_dec(x_10); if (x_11 == 0) { uint8_t x_12; @@ -12174,7 +12212,6 @@ lean_object* x_9; lean_object* x_10; uint8_t x_11; x_9 = lean_array_fget(x_3, x_5); x_10 = lean_array_fget(x_4, x_5); x_11 = l_Lean_Syntax_structEq(x_9, x_10); -lean_dec(x_10); if (x_11 == 0) { uint8_t x_12; diff --git a/stage0/stdlib/Lean/Elab/Command.c b/stage0/stdlib/Lean/Elab/Command.c index 2f83f0cd79..3222f09ab7 100644 --- a/stage0/stdlib/Lean/Elab/Command.c +++ b/stage0/stdlib/Lean/Elab/Command.c @@ -38,6 +38,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDec static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__6; lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3; static lean_object* l_Lean_Elab_Command_elabCommand___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__8___rarg(lean_object*); static lean_object* l_Lean_Elab_Command_instInhabitedState___closed__12; @@ -51,14 +52,15 @@ static lean_object* l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4 LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___boxed__const__1; LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instAddMessageContextCommandElabM___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1___boxed(lean_object*); extern lean_object* l_Lean_nullKind; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScope___rarg___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_mapMAux___at_Lean_Elab_Command_liftTermElabM___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__10(lean_object*, size_t, size_t, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); @@ -68,7 +70,6 @@ uint8_t l_Lean_Elab_isAbortExceptionId(lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_mapMAux___at_Lean_Elab_Command_liftTermElabM___spec__3___boxed__const__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__11(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -200,9 +201,9 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermE static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_getVarDecls(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getLevelNames___rarg___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1; static lean_object* l_Lean_Elab_Command_commandElabAttribute___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1; static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM___closed__1; @@ -218,6 +219,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addT LEAN_EXPORT lean_object* l_Lean_Elab_log___at_Lean_Elab_Command_runLinters___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkIfShadowingStructureField___at_Lean_Elab_Command_expandDeclId___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -260,6 +262,7 @@ static lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); static lean_object* l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1___closed__4; +static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3; static lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___closed__2; static lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1___closed__2; LEAN_EXPORT lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlMAux___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__3(lean_object*, lean_object*, lean_object*); @@ -272,7 +275,6 @@ static lean_object* l_Lean_Elab_Command_modifyScope___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__6(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__3; -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_withFreshMacroScope(lean_object*); lean_object* l_Lean_Elab_mkMessageCore(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); @@ -307,6 +309,7 @@ static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabComma lean_object* l_Std_mkHashMapImp___rarg(lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkMetaContext___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___closed__3; static lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___closed__3; static lean_object* l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4___closed__1; @@ -315,7 +318,6 @@ static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId__ static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftCoreM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_getBracketedBinderIds___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__9; @@ -327,6 +329,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Comm static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkMetaContext___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__2; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_addUnivLevel___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instInhabitedState___closed__6; @@ -336,8 +339,8 @@ static lean_object* l_Lean_Elab_Command_instInhabitedState___closed__13; lean_object* l_Lean_Core_getMaxHeartbeats(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_394_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_1577_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022_(lean_object*); lean_object* l_Lean_Syntax_getId(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_State_ngen___default; extern lean_object* l_Lean_Expr_instHashableExpr; @@ -349,7 +352,7 @@ lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_obje static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__14; static lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Command_expandDeclId___spec__1___closed__1; lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_mapM___at_Lean_Elab_Command_liftTermElabM___spec__2___boxed__const__1; static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__5; static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__3; @@ -358,6 +361,8 @@ static lean_object* l_Lean_Elab_Command_State_messages___default___closed__3; static lean_object* l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4___closed__4; LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); +static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Name_isAtomic(lean_object*); uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_commandElabAttribute___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); @@ -423,12 +428,12 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftCoreM___rarg(lean_object*, lean static lean_object* l_Lean_Elab_Command_commandElabAttribute___closed__6; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_withMacroExpansion(lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__3; lean_object* l_Lean_InternalExceptionId_getName(lean_object*, lean_object*); lean_object* l_Lean_Elab_expandDeclIdCore(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__6___lambda__2___closed__1; lean_object* l_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__3___closed__4; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runLinters___spec__4___closed__1; lean_object* l_EStateM_instMonadEStateM(lean_object*, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__11___closed__5; @@ -445,6 +450,7 @@ static lean_object* l_Lean_Elab_Command_commandElabAttribute___closed__4; static lean_object* l_Lean_Elab_Command_showPartialSyntaxErrors___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_Context_ref___default; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getMainModule___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__6; @@ -465,8 +471,6 @@ static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__4 LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__11___closed__3; lean_object* l_Std_PersistentArray_push___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__3___closed__1; static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__17; static lean_object* l_Lean_Elab_Command_instMonadRefCommandElabM___closed__3; static lean_object* l_Lean_Elab_Command_mkCommandElabAttribute___closed__1; @@ -510,6 +514,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_instInhabitedScope; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4___closed__5; static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5___boxed(lean_object*, lean_object*, lean_object*); static uint32_t l_Lean_Elab_Command_instInhabitedState___closed__4; static lean_object* l_Lean_Elab_Command_Scope_varDecls___default___closed__1; static lean_object* l_Lean_Elab_Command_State_infoState___default___closed__3; @@ -520,10 +525,11 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_getMainModule___rarg(lean_object*, LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLiftTIOCommandElabM(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_commandElabAttribute___closed__11; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__4___closed__6; -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__3___closed__2; static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM___closed__3; @@ -545,7 +551,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addT LEAN_EXPORT lean_object* l_Std_PersistentArray_forInAux___at_Lean_Elab_Command_elabCommandTopLevel___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instInhabitedState___closed__10; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_expandDeclId___spec__13(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2; LEAN_EXPORT lean_object* l_Lean_addDocString___at_Lean_Elab_Command_expandDeclId___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -566,14 +571,17 @@ static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__4; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_State_ngen___default___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getTailPos_x3f(lean_object*, uint8_t); extern lean_object* l_Lean_Expr_instBEqExpr; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_withoutAutoBoundImplicit___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_getBracketedBinderIds___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScopes___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instAddMessageContextCommandElabM; LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkMessageAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -594,7 +602,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCom LEAN_EXPORT lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Command_expandDeclId___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkMetaContext; lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(lean_object*, lean_object*, lean_object*); @@ -606,14 +614,14 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_commandElabAttribute___lambda__6___ static lean_object* l_Lean_Elab_Command_commandElabAttribute___closed__8; static lean_object* l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1___closed__3; lean_object* l_IO_mkRef___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Command_expandDeclId___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__6___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Std_PersistentArray_anyM___at_Lean_MessageLog_hasErrors___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlFromMAux___at_Lean_Elab_Command_elabCommandTopLevel___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__4; lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_State_nextMacroScope___default; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScope___rarg(lean_object*, lean_object*); uint8_t l_Lean_Elab_isFreshInstanceName(lean_object*); @@ -623,6 +631,7 @@ static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__1 LEAN_EXPORT lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Command_expandDeclId___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_usize_to_nat(size_t); static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__2; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1; static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId___spec__2___lambda__1___closed__1; lean_object* l_Std_instInhabitedPersistentArrayNode(lean_object*); static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__6; @@ -640,10 +649,10 @@ LEAN_EXPORT lean_object* l_Lean_Elab_applyVisibility___at_Lean_Elab_Command_expa lean_object* l_Lean_Elab_Term_withAutoBoundImplicit___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabCommand___closed__3; +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkMessageAux(lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Std_PersistentArray_mapM___at_Lean_Elab_Command_liftTermElabM___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1; static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__11___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -652,16 +661,20 @@ static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__1; static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__11___closed__6; static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__8; static lean_object* l_Lean_Elab_Command_instInhabitedScope___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addDocString_x27___at_Lean_Elab_Command_expandDeclId___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__18; LEAN_EXPORT lean_object* l_Lean_Elab_Command_Scope_varUIds___default; +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___boxed(lean_object*, lean_object*); lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Syntax_SepArray_getElems___spec__1(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13(lean_object*, lean_object*); static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId___spec__2___lambda__1___closed__2; static lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Command_addUnivLevel___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_logAt___at_Lean_Elab_Command_runLinters___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -678,7 +691,6 @@ static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_el LEAN_EXPORT lean_object* l_Std_PersistentArray_mapMAux___at_Lean_Elab_Command_liftTermElabM___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_getBetterRef(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_lintersRef; LEAN_EXPORT lean_object* l_Lean_Elab_Command_runTermElabM___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); @@ -8526,13 +8538,32 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("no_elab"); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { if (lean_obj_tag(x_3) == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_dec(x_1); +lean_inc(x_2); x_7 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_7, 0, x_2); x_8 = l_Lean_indentD(x_7); @@ -8544,151 +8575,156 @@ x_11 = l_Lean_Elab_logException___at_Lean_Elab_Command_runLinters___spec__1___cl x_12 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_12, 0, x_10); lean_ctor_set(x_12, 1, x_11); -x_13 = l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1(x_12, x_4, x_5, x_6); -lean_dec(x_5); -return x_13; +x_13 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); +lean_closure_set(x_13, 0, x_12); +x_14 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; +x_15 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_15, 0, x_14); +lean_closure_set(x_15, 1, x_2); +x_16 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_13, x_15, x_4, x_5, x_6); +return x_16; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_14 = lean_ctor_get(x_3, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_3, 1); -lean_inc(x_15); -lean_dec(x_3); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_inc(x_2); -x_17 = lean_apply_1(x_16, x_2); -x_18 = lean_ctor_get(x_14, 0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_17 = lean_ctor_get(x_3, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_3, 1); lean_inc(x_18); -lean_dec(x_14); -x_19 = lean_ctor_get(x_18, 1); +lean_dec(x_3); +x_19 = lean_ctor_get(x_17, 1); lean_inc(x_19); -lean_dec(x_18); lean_inc(x_2); -x_20 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_20, 0, x_19); -lean_closure_set(x_20, 1, x_2); +x_20 = lean_apply_1(x_19, x_2); +x_21 = lean_ctor_get(x_17, 0); +lean_inc(x_21); +lean_dec(x_17); +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +lean_inc(x_2); +x_23 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_23, 0, x_22); +lean_closure_set(x_23, 1, x_2); lean_inc(x_5); lean_inc(x_4); -x_21 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_17, x_20, x_4, x_5, x_6); -if (lean_obj_tag(x_21) == 0) +x_24 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_20, x_23, x_4, x_5, x_6); +if (lean_obj_tag(x_24) == 0) { -lean_dec(x_15); +lean_dec(x_18); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -return x_21; +return x_24; } else { -lean_object* x_22; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -if (lean_obj_tag(x_22) == 0) -{ -uint8_t x_23; -lean_dec(x_15); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_23 = !lean_is_exclusive(x_21); -if (x_23 == 0) -{ -lean_object* x_24; -x_24 = lean_ctor_get(x_21, 0); -lean_dec(x_24); -return x_21; -} -else -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_21, 1); +lean_object* x_25; +x_25 = lean_ctor_get(x_24, 0); lean_inc(x_25); -lean_dec(x_21); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_22); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -else +if (lean_obj_tag(x_25) == 0) { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_21); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_28 = lean_ctor_get(x_21, 1); -x_29 = lean_ctor_get(x_21, 0); -lean_dec(x_29); -x_30 = lean_ctor_get(x_22, 0); -lean_inc(x_30); -x_31 = l_Lean_Elab_unsupportedSyntaxExceptionId; -x_32 = lean_nat_dec_eq(x_31, x_30); -lean_dec(x_30); -if (x_32 == 0) -{ -lean_dec(x_15); +uint8_t x_26; +lean_dec(x_18); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -return x_21; +x_26 = !lean_is_exclusive(x_24); +if (x_26 == 0) +{ +lean_object* x_27; +x_27 = lean_ctor_get(x_24, 0); +lean_dec(x_27); +return x_24; } else { -lean_object* x_33; lean_object* x_34; -lean_free_object(x_21); -lean_dec(x_22); -lean_inc(x_1); -x_33 = lean_st_ref_set(x_5, x_1, x_28); -x_34 = lean_ctor_get(x_33, 1); -lean_inc(x_34); +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_24, 1); +lean_inc(x_28); +lean_dec(x_24); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_25); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_24); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_31 = lean_ctor_get(x_24, 1); +x_32 = lean_ctor_get(x_24, 0); +lean_dec(x_32); +x_33 = lean_ctor_get(x_25, 0); +lean_inc(x_33); +x_34 = l_Lean_Elab_unsupportedSyntaxExceptionId; +x_35 = lean_nat_dec_eq(x_34, x_33); lean_dec(x_33); -x_3 = x_15; -x_6 = x_34; +if (x_35 == 0) +{ +lean_dec(x_18); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +return x_24; +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_free_object(x_24); +lean_dec(x_25); +lean_inc(x_1); +x_36 = lean_st_ref_set(x_5, x_1, x_31); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +lean_dec(x_36); +x_3 = x_18; +x_6 = x_37; goto _start; } } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_36 = lean_ctor_get(x_21, 1); -lean_inc(x_36); -lean_dec(x_21); -x_37 = lean_ctor_get(x_22, 0); -lean_inc(x_37); -x_38 = l_Lean_Elab_unsupportedSyntaxExceptionId; -x_39 = lean_nat_dec_eq(x_38, x_37); -lean_dec(x_37); -if (x_39 == 0) +lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_39 = lean_ctor_get(x_24, 1); +lean_inc(x_39); +lean_dec(x_24); +x_40 = lean_ctor_get(x_25, 0); +lean_inc(x_40); +x_41 = l_Lean_Elab_unsupportedSyntaxExceptionId; +x_42 = lean_nat_dec_eq(x_41, x_40); +lean_dec(x_40); +if (x_42 == 0) { -lean_object* x_40; -lean_dec(x_15); +lean_object* x_43; +lean_dec(x_18); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_22); -lean_ctor_set(x_40, 1, x_36); -return x_40; +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_25); +lean_ctor_set(x_43, 1, x_39); +return x_43; } else { -lean_object* x_41; lean_object* x_42; -lean_dec(x_22); +lean_object* x_44; lean_object* x_45; +lean_dec(x_25); lean_inc(x_1); -x_41 = lean_st_ref_set(x_5, x_1, x_36); -x_42 = lean_ctor_get(x_41, 1); -lean_inc(x_42); -lean_dec(x_41); -x_3 = x_15; -x_6 = x_42; +x_44 = lean_st_ref_set(x_5, x_1, x_39); +x_45 = lean_ctor_get(x_44, 1); +lean_inc(x_45); +lean_dec(x_44); +x_3 = x_18; +x_6 = x_45; goto _start; } } @@ -9129,7 +9165,7 @@ lean_dec(x_1); return x_4; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1() { _start: { lean_object* x_1; @@ -9137,17 +9173,17 @@ x_1 = lean_mk_string("showPartialSyntaxErrors"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3() { _start: { lean_object* x_1; @@ -9155,13 +9191,13 @@ x_1 = lean_mk_string("show elaboration errors from partial syntax trees (i.e. af return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; x_2 = l_Lean_Elab_Command_instInhabitedScope___closed__1; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -9170,12 +9206,12 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4; x_4 = l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(x_2, x_3, x_1); return x_4; } @@ -9536,7 +9572,7 @@ return x_86; } } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -9546,21 +9582,21 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1; x_2 = l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__18; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2; x_3 = l_Lean_registerTraceClass(x_2, x_1); return x_3; } @@ -10194,11 +10230,8 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -10233,89 +10266,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -10606,7 +10681,411 @@ return x_84; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_5 = l_Lean_Elab_Command_getRef(x_2, x_3, x_4); +x_6 = lean_ctor_get(x_5, 0); +lean_inc(x_6); +x_7 = lean_ctor_get(x_5, 1); +lean_inc(x_7); +lean_dec(x_5); +x_8 = lean_ctor_get(x_2, 4); +lean_inc(x_8); +lean_inc(x_8); +x_9 = l_Lean_Elab_getBetterRef(x_6, x_8); +lean_dec(x_6); +x_10 = l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(x_1, x_2, x_3, x_7); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(x_11, x_8, x_2, x_3, x_12); +lean_dec(x_2); +lean_dec(x_8); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_9); +lean_ctor_set(x_16, 1, x_15); +lean_ctor_set_tag(x_13, 1); +lean_ctor_set(x_13, 0, x_16); +return x_13; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_13, 0); +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_inc(x_17); +lean_dec(x_13); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_9); +lean_ctor_set(x_19, 1, x_17); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = l_Lean_replaceRef(x_1, x_7); +lean_dec(x_7); +lean_dec(x_1); +x_10 = !lean_is_exclusive(x_3); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_3, 6); +lean_dec(x_11); +lean_ctor_set(x_3, 6, x_9); +x_12 = l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(x_2, x_3, x_4, x_8); +lean_dec(x_4); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_13 = lean_ctor_get(x_3, 0); +x_14 = lean_ctor_get(x_3, 1); +x_15 = lean_ctor_get(x_3, 2); +x_16 = lean_ctor_get(x_3, 3); +x_17 = lean_ctor_get(x_3, 4); +x_18 = lean_ctor_get(x_3, 5); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_3); +x_19 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_19, 0, x_13); +lean_ctor_set(x_19, 1, x_14); +lean_ctor_set(x_19, 2, x_15); +lean_ctor_set(x_19, 3, x_16); +lean_ctor_set(x_19, 4, x_17); +lean_ctor_set(x_19, 5, x_18); +lean_ctor_set(x_19, 6, x_9); +x_20 = l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(x_2, x_19, x_4, x_8); +lean_dec(x_4); +return x_20; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__8___rarg___closed__1; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg), 1, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_5 = lean_st_ref_get(x_3, x_4); +x_6 = lean_ctor_get(x_5, 0); +lean_inc(x_6); +x_7 = lean_ctor_get(x_5, 1); +lean_inc(x_7); +lean_dec(x_5); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +lean_dec(x_6); +x_9 = l_Lean_Elab_Command_getScope___rarg(x_3, x_7); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 2); +lean_inc(x_12); +lean_dec(x_10); +x_13 = l_Lean_Elab_Command_getScope___rarg(x_3, x_11); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 3); +lean_inc(x_16); +lean_dec(x_14); +lean_inc(x_8); +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__1___boxed), 4, 1); +lean_closure_set(x_17, 0, x_8); +lean_inc(x_12); +x_18 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__1___rarg___boxed), 3, 1); +lean_closure_set(x_18, 0, x_12); +lean_inc(x_8); +x_19 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__2___boxed), 4, 1); +lean_closure_set(x_19, 0, x_8); +lean_inc(x_16); +lean_inc(x_12); +lean_inc(x_8); +x_20 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__3___boxed), 6, 3); +lean_closure_set(x_20, 0, x_8); +lean_closure_set(x_20, 1, x_12); +lean_closure_set(x_20, 2, x_16); +lean_inc(x_8); +x_21 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__2___lambda__4___boxed), 6, 3); +lean_closure_set(x_21, 0, x_8); +lean_closure_set(x_21, 1, x_12); +lean_closure_set(x_21, 2, x_16); +x_22 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_22, 0, x_17); +lean_ctor_set(x_22, 1, x_18); +lean_ctor_set(x_22, 2, x_19); +lean_ctor_set(x_22, 3, x_20); +lean_ctor_set(x_22, 4, x_21); +x_23 = x_22; +x_24 = l_Lean_Elab_Command_getRef(x_2, x_3, x_15); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, x_26); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_ctor_get(x_2, 2); +lean_inc(x_30); +x_31 = lean_st_ref_get(x_3, x_29); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = lean_ctor_get(x_32, 4); +lean_inc(x_34); +lean_dec(x_32); +x_35 = lean_st_ref_get(x_3, x_33); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = lean_ctor_get(x_36, 3); +lean_inc(x_38); +lean_dec(x_36); +x_39 = lean_environment_main_module(x_8); +x_40 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_40, 0, x_23); +lean_ctor_set(x_40, 1, x_39); +lean_ctor_set(x_40, 2, x_28); +lean_ctor_set(x_40, 3, x_30); +lean_ctor_set(x_40, 4, x_34); +lean_ctor_set(x_40, 5, x_25); +x_41 = lean_box(0); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_38); +lean_ctor_set(x_42, 1, x_41); +x_43 = lean_apply_2(x_1, x_40, x_42); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +lean_dec(x_43); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +x_47 = lean_st_ref_take(x_3, x_37); +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_47, 1); +lean_inc(x_49); +lean_dec(x_47); +x_50 = !lean_is_exclusive(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_51 = lean_ctor_get(x_48, 3); +lean_dec(x_51); +lean_ctor_set(x_48, 3, x_46); +x_52 = lean_st_ref_set(x_3, x_48, x_49); +x_53 = lean_ctor_get(x_52, 1); +lean_inc(x_53); +lean_dec(x_52); +x_54 = lean_ctor_get(x_45, 1); +lean_inc(x_54); +lean_dec(x_45); +x_55 = l_List_reverse___rarg(x_54); +x_56 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(x_55, x_2, x_3, x_53); +lean_dec(x_3); +lean_dec(x_2); +x_57 = !lean_is_exclusive(x_56); +if (x_57 == 0) +{ +lean_object* x_58; +x_58 = lean_ctor_get(x_56, 0); +lean_dec(x_58); +lean_ctor_set(x_56, 0, x_44); +return x_56; +} +else +{ +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_56, 1); +lean_inc(x_59); +lean_dec(x_56); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_44); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_61 = lean_ctor_get(x_48, 0); +x_62 = lean_ctor_get(x_48, 1); +x_63 = lean_ctor_get(x_48, 2); +x_64 = lean_ctor_get(x_48, 4); +x_65 = lean_ctor_get(x_48, 5); +x_66 = lean_ctor_get(x_48, 6); +x_67 = lean_ctor_get(x_48, 7); +x_68 = lean_ctor_get(x_48, 8); +lean_inc(x_68); +lean_inc(x_67); +lean_inc(x_66); +lean_inc(x_65); +lean_inc(x_64); +lean_inc(x_63); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_48); +x_69 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_69, 0, x_61); +lean_ctor_set(x_69, 1, x_62); +lean_ctor_set(x_69, 2, x_63); +lean_ctor_set(x_69, 3, x_46); +lean_ctor_set(x_69, 4, x_64); +lean_ctor_set(x_69, 5, x_65); +lean_ctor_set(x_69, 6, x_66); +lean_ctor_set(x_69, 7, x_67); +lean_ctor_set(x_69, 8, x_68); +x_70 = lean_st_ref_set(x_3, x_69, x_49); +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = lean_ctor_get(x_45, 1); +lean_inc(x_72); +lean_dec(x_45); +x_73 = l_List_reverse___rarg(x_72); +x_74 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(x_73, x_2, x_3, x_71); +lean_dec(x_3); +lean_dec(x_2); +x_75 = lean_ctor_get(x_74, 1); +lean_inc(x_75); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_76 = x_74; +} else { + lean_dec_ref(x_74); + x_76 = lean_box(0); +} +if (lean_is_scalar(x_76)) { + x_77 = lean_alloc_ctor(0, 2, 0); +} else { + x_77 = x_76; +} +lean_ctor_set(x_77, 0, x_44); +lean_ctor_set(x_77, 1, x_75); +return x_77; +} +} +else +{ +lean_object* x_78; +x_78 = lean_ctor_get(x_43, 0); +lean_inc(x_78); +lean_dec(x_43); +if (lean_obj_tag(x_78) == 0) +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_78, 1); +lean_inc(x_80); +lean_dec(x_78); +x_81 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_81, 0, x_80); +x_82 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_82, 0, x_81); +x_83 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_79, x_82, x_2, x_3, x_37); +return x_83; +} +else +{ +lean_object* x_84; +lean_dec(x_3); +lean_dec(x_2); +x_84 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_37); +return x_84; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; @@ -10636,7 +11115,7 @@ x_16 = l_Lean_Elab_log___at_Lean_Elab_Command_runLinters___spec__3(x_14, x_15, x return x_16; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -10911,7 +11390,55 @@ return x_45; } } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__1() { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +lean_inc(x_4); +lean_inc(x_3); +x_6 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(x_1, x_3, x_4, x_5); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +lean_inc(x_7); +x_9 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); +lean_closure_set(x_9, 0, x_7); +x_10 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_2, x_7, x_9, x_3, x_4, x_8); +return x_10; +} +else +{ +uint8_t x_11; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_11 = !lean_is_exclusive(x_6); +if (x_11 == 0) +{ +return x_6; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_6, 0); +x_13 = lean_ctor_get(x_6, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_6); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +return x_14; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -10919,16 +11446,16 @@ x_1 = lean_mk_string("elaboration function for '"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCommand___lambda__3___closed__1; +x_1 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__3() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__3() { _start: { lean_object* x_1; @@ -10936,57 +11463,57 @@ x_1 = lean_mk_string("' has not been implemented"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__4() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCommand___lambda__3___closed__3; +x_1 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { -lean_object* x_7; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_38 = lean_st_ref_get(x_5, x_6); -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -x_40 = lean_ctor_get(x_38, 1); -lean_inc(x_40); -lean_dec(x_38); -x_41 = lean_ctor_get(x_39, 2); -lean_inc(x_41); -lean_dec(x_39); -x_42 = l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1(x_41); -x_43 = lean_ctor_get(x_42, 1); +lean_object* x_7; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_41 = lean_st_ref_get(x_5, x_6); +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 2); +lean_inc(x_44); lean_dec(x_42); +x_45 = l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1(x_44); +x_46 = lean_ctor_get(x_45, 1); +lean_inc(x_46); +lean_dec(x_45); lean_inc(x_3); -x_44 = l_Lean_checkTraceOption(x_43, x_3); -lean_dec(x_43); -if (x_44 == 0) +x_47 = l_Lean_checkTraceOption(x_46, x_3); +lean_dec(x_46); +if (x_47 == 0) { lean_dec(x_3); -x_7 = x_40; -goto block_37; +x_7 = x_43; +goto block_40; } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_inc(x_1); -x_45 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_45, 0, x_1); +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_1); lean_inc(x_5); lean_inc(x_4); -x_46 = l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__9(x_3, x_45, x_4, x_5, x_40); -x_47 = lean_ctor_get(x_46, 1); -lean_inc(x_47); -lean_dec(x_46); -x_7 = x_47; -goto block_37; +x_49 = l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__14(x_3, x_48, x_4, x_5, x_43); +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_7 = x_50; +goto block_40; } -block_37: +block_40: { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_st_ref_get(x_5, x_7); @@ -11021,95 +11548,97 @@ lean_inc(x_2); x_17 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_16, x_11, x_2); if (lean_obj_tag(x_17) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_dec(x_9); -lean_dec(x_1); x_18 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_18, 0, x_2); -x_19 = l_Lean_Elab_Command_elabCommand___lambda__3___closed__2; +x_19 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__2; x_20 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_18); -x_21 = l_Lean_Elab_Command_elabCommand___lambda__3___closed__4; +x_21 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__4; x_22 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_22, 0, x_20); lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1(x_22, x_4, x_5, x_15); -lean_dec(x_5); -return x_23; +x_23 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); +lean_closure_set(x_23, 0, x_22); +x_24 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; +x_25 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_25, 0, x_24); +lean_closure_set(x_25, 1, x_1); +x_26 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_23, x_25, x_4, x_5, x_15); +return x_26; } else { -lean_object* x_24; +lean_object* x_27; lean_dec(x_2); -x_24 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_9, x_1, x_17, x_4, x_5, x_15); -return x_24; +x_27 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_9, x_1, x_17, x_4, x_5, x_15); +return x_27; } } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_dec(x_11); lean_dec(x_9); lean_dec(x_2); -x_25 = lean_ctor_get(x_14, 0); -lean_inc(x_25); +x_28 = lean_ctor_get(x_14, 0); +lean_inc(x_28); lean_dec(x_14); -x_26 = lean_ctor_get(x_13, 1); -lean_inc(x_26); +x_29 = lean_ctor_get(x_13, 1); +lean_inc(x_29); lean_dec(x_13); -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_25, 1); -lean_inc(x_28); -lean_dec(x_25); -lean_inc(x_28); -x_29 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); -lean_closure_set(x_29, 0, x_28); +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_31); +lean_dec(x_28); +x_32 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9___boxed), 3, 1); +lean_closure_set(x_32, 0, x_31); lean_inc(x_1); -x_30 = lean_alloc_closure((void*)(l_Lean_Elab_Command_withMacroExpansion___rarg), 6, 3); -lean_closure_set(x_30, 0, x_1); -lean_closure_set(x_30, 1, x_28); -lean_closure_set(x_30, 2, x_29); -x_31 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_31, 0, x_27); -lean_closure_set(x_31, 1, x_1); -x_32 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_30, x_31, x_4, x_5, x_26); -return x_32; +x_33 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3), 5, 2); +lean_closure_set(x_33, 0, x_32); +lean_closure_set(x_33, 1, x_1); +x_34 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_34, 0, x_30); +lean_closure_set(x_34, 1, x_1); +x_35 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_33, x_34, x_4, x_5, x_29); +return x_35; } } else { -uint8_t x_33; +uint8_t x_36; lean_dec(x_11); lean_dec(x_9); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_33 = !lean_is_exclusive(x_13); -if (x_33 == 0) +x_36 = !lean_is_exclusive(x_13); +if (x_36 == 0) { return x_13; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_13, 0); -x_35 = lean_ctor_get(x_13, 1); -lean_inc(x_35); -lean_inc(x_34); +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_13, 0); +x_38 = lean_ctor_get(x_13, 1); +lean_inc(x_38); +lean_inc(x_37); lean_dec(x_13); -x_36 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -return x_36; +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -11151,7 +11680,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabCommand___closed__4() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__4___boxed), 3, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__5___boxed), 3, 0); return x_1; } } @@ -11180,9 +11709,9 @@ if (x_8 == 0) { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_dec(x_6); -x_9 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2; +x_9 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2; lean_inc(x_1); -x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3), 6, 3); +x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__4), 6, 3); lean_closure_set(x_10, 0, x_1); lean_closure_set(x_10, 1, x_5); lean_closure_set(x_10, 2, x_9); @@ -11235,7 +11764,7 @@ lean_dec(x_13); x_24 = lean_box(0); x_25 = l_Lean_Elab_Command_elabCommand___boxed__const__1; x_26 = lean_box_usize(x_23); -x_27 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10___boxed), 7, 4); +x_27 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15___boxed), 7, 4); lean_closure_set(x_27, 0, x_6); lean_closure_set(x_27, 1, x_25); lean_closure_set(x_27, 2, x_26); @@ -11357,7 +11886,36 @@ lean_dec(x_5); return x_7; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Elab_Command_elabCommand___spec__9(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(x_1, x_2, x_3, x_4); +lean_dec(x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { size_t x_8; size_t x_9; lean_object* x_10; @@ -11365,7 +11923,7 @@ x_8 = lean_unbox_usize(x_2); lean_dec(x_2); x_9 = lean_unbox_usize(x_3); lean_dec(x_3); -x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_1, x_8, x_9, x_4, x_5, x_6, x_7); +x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_1, x_8, x_9, x_4, x_5, x_6, x_7); lean_dec(x_1); return x_10; } @@ -11380,11 +11938,11 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Lean_Elab_Command_elabCommand___lambda__4(x_1, x_2, x_3); +x_4 = l_Lean_Elab_Command_elabCommand___lambda__5(x_1, x_2, x_3); lean_dec(x_2); lean_dec(x_1); return x_4; @@ -11673,7 +12231,7 @@ static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1; x_2 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__5___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -12541,7 +13099,7 @@ static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabC _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1; x_2 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommandTopLevel___spec__11___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -18149,7 +18707,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Elab_Command_modifyScope___closed__1; x_2 = l_Lean_Elab_Command_modifyScope___closed__2; -x_3 = lean_unsigned_to_nat(405u); +x_3 = lean_unsigned_to_nat(408u); x_4 = lean_unsigned_to_nat(16u); x_5 = l_Lean_Elab_Command_modifyScope___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -21772,6 +22330,10 @@ l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__1 lean_mark_persistent(l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__1); l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__2 = _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__2(); lean_mark_persistent(l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__2); +l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3 = _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3); +l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4 = _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4); l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___closed__1 = _init_l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___closed__1); l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___closed__2 = _init_l_Lean_Elab_Command_instMonadMacroAdapterCommandElabM___closed__2(); @@ -21790,17 +22352,17 @@ l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__4 = _init_l_Lean_Ela lean_mark_persistent(l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__4); l_Lean_Elab_Command_instMonadRecDepthCommandElabM = _init_l_Lean_Elab_Command_instMonadRecDepthCommandElabM(); lean_mark_persistent(l_Lean_Elab_Command_instMonadRecDepthCommandElabM); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__3); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016____closed__4); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__2); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__3); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022____closed__4); l_Lean_Elab_Command_showPartialSyntaxErrors___closed__1 = _init_l_Lean_Elab_Command_showPartialSyntaxErrors___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_showPartialSyntaxErrors___closed__1); -res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2016_(lean_io_mk_world()); +res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2022_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Command_showPartialSyntaxErrors = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Command_showPartialSyntaxErrors); @@ -21809,11 +22371,11 @@ l_Lean_Elab_Command_withLogging___closed__1 = _init_l_Lean_Elab_Command_withLogg lean_mark_persistent(l_Lean_Elab_Command_withLogging___closed__1); l_Lean_Elab_Command_withLogging___closed__2 = _init_l_Lean_Elab_Command_withLogging___closed__2(); lean_mark_persistent(l_Lean_Elab_Command_withLogging___closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130____closed__2); -res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2130_(lean_io_mk_world()); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136____closed__2); +res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2136_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4___closed__1 = _init_l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__4___closed__1(); @@ -21834,14 +22396,14 @@ l_Lean_Elab_Command_elabCommand___lambda__2___closed__1 = _init_l_Lean_Elab_Comm lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__2___closed__1); l_Lean_Elab_Command_elabCommand___lambda__2___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__2___closed__2(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__2___closed__2); -l_Lean_Elab_Command_elabCommand___lambda__3___closed__1 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__3___closed__1); -l_Lean_Elab_Command_elabCommand___lambda__3___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__3___closed__2); -l_Lean_Elab_Command_elabCommand___lambda__3___closed__3 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__3___closed__3); -l_Lean_Elab_Command_elabCommand___lambda__3___closed__4 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__3___closed__4); +l_Lean_Elab_Command_elabCommand___lambda__4___closed__1 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__1); +l_Lean_Elab_Command_elabCommand___lambda__4___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__2); +l_Lean_Elab_Command_elabCommand___lambda__4___closed__3 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__3); +l_Lean_Elab_Command_elabCommand___lambda__4___closed__4 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__4); l_Lean_Elab_Command_elabCommand___closed__1 = _init_l_Lean_Elab_Command_elabCommand___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___closed__1); l_Lean_Elab_Command_elabCommand___closed__2 = _init_l_Lean_Elab_Command_elabCommand___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/DefView.c b/stage0/stdlib/Lean/Elab/DefView.c index e72582d98f..c3aaab842e 100644 --- a/stage0/stdlib/Lean/Elab/DefView.c +++ b/stage0/stdlib/Lean/Elab/DefView.c @@ -40,7 +40,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_MkInstanceName_collect(lean_object* lean_object* l_Lean_SourceInfo_fromRef(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkDefViewOfInstance___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___closed__21; lean_object* lean_st_ref_get(lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); @@ -86,6 +85,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_MkInstanceName_append(lean_object*, static lean_object* l_Lean_Elab_Command_isDefLike___closed__4; static lean_object* l_Lean_Elab_Command_mkDefViewOfConstant___closed__3; static lean_object* l_Lean_Elab_Command_isDefLike___closed__8; +lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_mkDefViewOfConstant___closed__5; static lean_object* l_Lean_Elab_Command_mkDefViewOfInstance___closed__7; lean_object* l_Lean_ResolveName_resolveNamespace_x3f(lean_object*, lean_object*, lean_object*, lean_object*); @@ -121,7 +121,6 @@ static lean_object* l_Lean_Elab_Command_mkDefViewOfConstant___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Command_isDefLike___boxed(lean_object*); static lean_object* l___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___closed__19; LEAN_EXPORT lean_object* l_Std_RBNode_insert___at___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___spec__2(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_RBMap_ofList___at___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___spec__1(lean_object*); lean_object* l_Nat_repr(lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); @@ -144,7 +143,6 @@ static lean_object* l_Lean_Elab_Command_isDefLike___closed__9; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_mkDefView___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*); uint32_t lean_string_utf8_get(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___closed__24; static lean_object* l_Lean_Elab_Command_MkInstanceName_main___closed__1; @@ -176,7 +174,6 @@ lean_object* l_Lean_mkAtomFrom(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_MkInstanceName_isFirst___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_DefKind_noConfusion___rarg___closed__1; -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getSepArgs(lean_object*); uint8_t l_String_isEmpty(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_DefKind_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -206,7 +203,6 @@ static lean_object* l_Lean_Elab_Command_mkDefViewOfInstance___closed__2; static lean_object* l_Lean_Elab_Command_mkDefViewOfConstant___closed__11; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_mkDefView___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalName___at_Lean_Elab_Command_MkInstanceName_collect___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___boxed(lean_object*, lean_object*); uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* l_Lean_expandMacros(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Modifiers_addAttribute(lean_object*, lean_object*); @@ -243,7 +239,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_MkInstanceName_mkFreshInstanceName_ LEAN_EXPORT lean_object* l_Std_RBNode_ins___at___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___spec__3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_instInhabitedDefView___closed__2; static lean_object* l_Lean_Elab_Command_mkDefViewOfInstance___closed__5; -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_DefView_deriving_x3f___default; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_isDefLike___closed__10; @@ -255,7 +250,6 @@ static lean_object* l_Lean_Elab_Command_isDefLike___closed__7; static lean_object* l_Lean_Elab_Command_mkDefViewOfConstant___closed__7; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_DefView___hyg_1520____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_MkInstanceName_main(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8(lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_DefView_0__Lean_Elab_beqDefKind____x40_Lean_Elab_DefView___hyg_14_(uint8_t, uint8_t); static lean_object* l___private_Lean_Elab_DefView_0__Lean_Elab_Command_MkInstanceName_kindReplacements___closed__22; LEAN_EXPORT lean_object* l_Lean_MonadRef_mkInfoFromRefPos___at_Lean_Elab_Command_mkDefViewOfConstant___spec__1(lean_object*, lean_object*, lean_object*); @@ -4525,11 +4519,8 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -4564,89 +4555,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -4937,385 +4970,6 @@ return x_84; } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_5 = l_Lean_Elab_Command_getRef(x_2, x_3, x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_2, 4); -lean_inc(x_8); -lean_inc(x_8); -x_9 = l_Lean_Elab_getBetterRef(x_6, x_8); -lean_dec(x_6); -x_10 = l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(x_1, x_2, x_3, x_7); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(x_11, x_8, x_2, x_3, x_12); -lean_dec(x_2); -lean_dec(x_8); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_9); -lean_ctor_set(x_16, 1, x_15); -lean_ctor_set_tag(x_13, 1); -lean_ctor_set(x_13, 0, x_16); -return x_13; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_13, 0); -x_18 = lean_ctor_get(x_13, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_13); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_9); -lean_ctor_set(x_19, 1, x_17); -x_20 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_18); -return x_20; -} -} -} -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_replaceRef(x_1, x_7); -lean_dec(x_7); -lean_dec(x_1); -x_10 = !lean_is_exclusive(x_3); -if (x_10 == 0) -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_3, 6); -lean_dec(x_11); -lean_ctor_set(x_3, 6, x_9); -x_12 = l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7(x_2, x_3, x_4, x_8); -lean_dec(x_4); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_13 = lean_ctor_get(x_3, 0); -x_14 = lean_ctor_get(x_3, 1); -x_15 = lean_ctor_get(x_3, 2); -x_16 = lean_ctor_get(x_3, 3); -x_17 = lean_ctor_get(x_3, 4); -x_18 = lean_ctor_get(x_3, 5); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_3); -x_19 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_19, 0, x_13); -lean_ctor_set(x_19, 1, x_14); -lean_ctor_set(x_19, 2, x_15); -lean_ctor_set(x_19, 3, x_16); -lean_ctor_set(x_19, 4, x_17); -lean_ctor_set(x_19, 5, x_18); -lean_ctor_set(x_19, 6, x_9); -x_20 = l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7(x_2, x_19, x_4, x_8); -lean_dec(x_4); -return x_20; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___rarg(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__4___rarg___closed__1; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___rarg), 1, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_5 = lean_st_ref_get(x_3, x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_6, 0); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_Elab_Command_getScope___rarg(x_3, x_7); -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); -lean_inc(x_11); -lean_dec(x_9); -x_12 = lean_ctor_get(x_10, 2); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Elab_Command_getScope___rarg(x_3, x_11); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -x_16 = lean_ctor_get(x_14, 3); -lean_inc(x_16); -lean_dec(x_14); -lean_inc(x_8); -x_17 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__1___boxed), 4, 1); -lean_closure_set(x_17, 0, x_8); -lean_inc(x_12); -x_18 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__1___rarg___boxed), 3, 1); -lean_closure_set(x_18, 0, x_12); -lean_inc(x_8); -x_19 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__2___boxed), 4, 1); -lean_closure_set(x_19, 0, x_8); -lean_inc(x_16); -lean_inc(x_12); -lean_inc(x_8); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__3___boxed), 6, 3); -lean_closure_set(x_20, 0, x_8); -lean_closure_set(x_20, 1, x_12); -lean_closure_set(x_20, 2, x_16); -lean_inc(x_8); -x_21 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1___lambda__4___boxed), 6, 3); -lean_closure_set(x_21, 0, x_8); -lean_closure_set(x_21, 1, x_12); -lean_closure_set(x_21, 2, x_16); -x_22 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_22, 0, x_17); -lean_ctor_set(x_22, 1, x_18); -lean_ctor_set(x_22, 2, x_19); -lean_ctor_set(x_22, 3, x_20); -lean_ctor_set(x_22, 4, x_21); -x_23 = x_22; -x_24 = l_Lean_Elab_Command_getRef(x_2, x_3, x_15); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, x_26); -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); -lean_inc(x_29); -lean_dec(x_27); -x_30 = lean_ctor_get(x_2, 2); -lean_inc(x_30); -x_31 = lean_st_ref_get(x_3, x_29); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 1); -lean_inc(x_33); -lean_dec(x_31); -x_34 = lean_ctor_get(x_32, 4); -lean_inc(x_34); -lean_dec(x_32); -x_35 = lean_st_ref_get(x_3, x_33); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 1); -lean_inc(x_37); -lean_dec(x_35); -x_38 = lean_ctor_get(x_36, 3); -lean_inc(x_38); -lean_dec(x_36); -x_39 = lean_environment_main_module(x_8); -x_40 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_40, 0, x_23); -lean_ctor_set(x_40, 1, x_39); -lean_ctor_set(x_40, 2, x_28); -lean_ctor_set(x_40, 3, x_30); -lean_ctor_set(x_40, 4, x_34); -lean_ctor_set(x_40, 5, x_25); -x_41 = lean_box(0); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_38); -lean_ctor_set(x_42, 1, x_41); -x_43 = lean_apply_2(x_1, x_40, x_42); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_43, 1); -lean_inc(x_45); -lean_dec(x_43); -x_46 = lean_ctor_get(x_45, 0); -lean_inc(x_46); -x_47 = lean_st_ref_take(x_3, x_37); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 1); -lean_inc(x_49); -lean_dec(x_47); -x_50 = !lean_is_exclusive(x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_51 = lean_ctor_get(x_48, 3); -lean_dec(x_51); -lean_ctor_set(x_48, 3, x_46); -x_52 = lean_st_ref_set(x_3, x_48, x_49); -x_53 = lean_ctor_get(x_52, 1); -lean_inc(x_53); -lean_dec(x_52); -x_54 = lean_ctor_get(x_45, 1); -lean_inc(x_54); -lean_dec(x_45); -x_55 = l_List_reverse___rarg(x_54); -x_56 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(x_55, x_2, x_3, x_53); -lean_dec(x_3); -lean_dec(x_2); -x_57 = !lean_is_exclusive(x_56); -if (x_57 == 0) -{ -lean_object* x_58; -x_58 = lean_ctor_get(x_56, 0); -lean_dec(x_58); -lean_ctor_set(x_56, 0, x_44); -return x_56; -} -else -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_56, 1); -lean_inc(x_59); -lean_dec(x_56); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_44); -lean_ctor_set(x_60, 1, x_59); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_61 = lean_ctor_get(x_48, 0); -x_62 = lean_ctor_get(x_48, 1); -x_63 = lean_ctor_get(x_48, 2); -x_64 = lean_ctor_get(x_48, 4); -x_65 = lean_ctor_get(x_48, 5); -x_66 = lean_ctor_get(x_48, 6); -x_67 = lean_ctor_get(x_48, 7); -x_68 = lean_ctor_get(x_48, 8); -lean_inc(x_68); -lean_inc(x_67); -lean_inc(x_66); -lean_inc(x_65); -lean_inc(x_64); -lean_inc(x_63); -lean_inc(x_62); -lean_inc(x_61); -lean_dec(x_48); -x_69 = lean_alloc_ctor(0, 9, 0); -lean_ctor_set(x_69, 0, x_61); -lean_ctor_set(x_69, 1, x_62); -lean_ctor_set(x_69, 2, x_63); -lean_ctor_set(x_69, 3, x_46); -lean_ctor_set(x_69, 4, x_64); -lean_ctor_set(x_69, 5, x_65); -lean_ctor_set(x_69, 6, x_66); -lean_ctor_set(x_69, 7, x_67); -lean_ctor_set(x_69, 8, x_68); -x_70 = lean_st_ref_set(x_3, x_69, x_49); -x_71 = lean_ctor_get(x_70, 1); -lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_ctor_get(x_45, 1); -lean_inc(x_72); -lean_dec(x_45); -x_73 = l_List_reverse___rarg(x_72); -x_74 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(x_73, x_2, x_3, x_71); -lean_dec(x_3); -lean_dec(x_2); -x_75 = lean_ctor_get(x_74, 1); -lean_inc(x_75); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - x_76 = x_74; -} else { - lean_dec_ref(x_74); - x_76 = lean_box(0); -} -if (lean_is_scalar(x_76)) { - x_77 = lean_alloc_ctor(0, 2, 0); -} else { - x_77 = x_76; -} -lean_ctor_set(x_77, 0, x_44); -lean_ctor_set(x_77, 1, x_75); -return x_77; -} -} -else -{ -lean_object* x_78; -x_78 = lean_ctor_get(x_43, 0); -lean_inc(x_78); -lean_dec(x_43); -if (lean_obj_tag(x_78) == 0) -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_79 = lean_ctor_get(x_78, 0); -lean_inc(x_79); -x_80 = lean_ctor_get(x_78, 1); -lean_inc(x_80); -lean_dec(x_78); -x_81 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_81, 0, x_80); -x_82 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_82, 0, x_81); -x_83 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(x_79, x_82, x_2, x_3, x_37); -return x_83; -} -else -{ -lean_object* x_84; -lean_dec(x_3); -lean_dec(x_2); -x_84 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___rarg(x_37); -return x_84; -} -} -} -} static lean_object* _init_l_Lean_Elab_Command_MkInstanceName_main___closed__1() { _start: { @@ -5332,7 +4986,7 @@ x_5 = lean_alloc_closure((void*)(l_Lean_expandMacros), 3, 1); lean_closure_set(x_5, 0, x_1); lean_inc(x_3); lean_inc(x_2); -x_6 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1(x_5, x_2, x_3, x_4); +x_6 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(x_5, x_2, x_3, x_4); if (lean_obj_tag(x_6) == 0) { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; @@ -5373,7 +5027,7 @@ x_21 = lean_box(0); x_22 = lean_name_mk_string(x_21, x_20); x_23 = lean_alloc_closure((void*)(l_Lean_Elab_mkUnusedBaseName), 3, 1); lean_closure_set(x_23, 0, x_22); -x_24 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__5(x_23, x_2, x_3, x_17); +x_24 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1(x_23, x_2, x_3, x_17); return x_24; } else @@ -5469,25 +5123,6 @@ lean_dec(x_5); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_throwError___at_Lean_Elab_Command_MkInstanceName_main___spec__7(x_1, x_2, x_3, x_4); -lean_dec(x_3); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_MkInstanceName_main___spec__8(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -return x_3; -} -} LEAN_EXPORT lean_object* l_Lean_MonadRef_mkInfoFromRefPos___at_Lean_Elab_Command_mkDefViewOfConstant___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { diff --git a/stage0/stdlib/Lean/Elab/Deriving/BEq.c b/stage0/stdlib/Lean/Elab/Deriving/BEq.c index d60b4e55cf..46cc7d966a 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/BEq.c +++ b/stage0/stdlib/Lean/Elab/Deriving/BEq.c @@ -30,7 +30,6 @@ lean_object* l_Lean_getConstInfo___at_Lean_Elab_elabDeriving___spec__14(lean_obj LEAN_EXPORT lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqInstanceCmds(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqEnumFun___closed__13; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_BEq_mkMatch_mkElseAlt___closed__9; lean_object* lean_name_mk_string(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); @@ -115,6 +114,7 @@ LEAN_EXPORT lean_object* l_Lean_isInductive___at_Lean_Elab_Deriving_BEq_mkBEqIns lean_object* l_Lean_Expr_fvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_BEq_mkMatch(lean_object*); static lean_object* l_Lean_Elab_Deriving_BEq_mkAuxFunction___lambda__1___closed__1; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqEnumFun___closed__14; static lean_object* l_Lean_Elab_Deriving_BEq_mkMatch_mkElseAlt___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqEnumFun(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -7037,7 +7037,7 @@ x_112 = 0; x_113 = lean_usize_of_nat(x_105); lean_dec(x_105); x_114 = lean_box(0); -x_115 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_103, x_112, x_113, x_114, x_2, x_3, x_104); +x_115 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_103, x_112, x_113, x_114, x_2, x_3, x_104); lean_dec(x_103); if (lean_obj_tag(x_115) == 0) { @@ -7141,7 +7141,7 @@ x_139 = 0; x_140 = lean_usize_of_nat(x_130); lean_dec(x_130); x_141 = lean_box(0); -x_142 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_128, x_139, x_140, x_141, x_2, x_3, x_129); +x_142 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_128, x_139, x_140, x_141, x_2, x_3, x_129); lean_dec(x_128); if (lean_obj_tag(x_142) == 0) { @@ -7377,7 +7377,7 @@ x_36 = 0; x_37 = lean_usize_of_nat(x_29); lean_dec(x_29); x_38 = lean_box(0); -x_39 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_27, x_36, x_37, x_38, x_2, x_3, x_28); +x_39 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_27, x_36, x_37, x_38, x_2, x_3, x_28); lean_dec(x_27); if (lean_obj_tag(x_39) == 0) { @@ -7481,7 +7481,7 @@ x_63 = 0; x_64 = lean_usize_of_nat(x_54); lean_dec(x_54); x_65 = lean_box(0); -x_66 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_52, x_63, x_64, x_65, x_2, x_3, x_53); +x_66 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_52, x_63, x_64, x_65, x_2, x_3, x_53); lean_dec(x_52); if (lean_obj_tag(x_66) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Deriving/Basic.c b/stage0/stdlib/Lean/Elab/Deriving/Basic.c index c5242bad55..5f68c5fb7b 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/Basic.c +++ b/stage0/stdlib/Lean/Elab/Deriving/Basic.c @@ -125,6 +125,7 @@ static lean_object* l_Lean_Elab_elabDeriving___closed__6; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_elabDeriving___spec__15(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_elabDeriving___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Elab_elabDeriving___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_elabDeriving___spec__19(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); @@ -137,7 +138,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_elabDeriving___lambda__1(lean_object*, lean lean_object* l_List_filterAux___at_Lean_resolveGlobalConstCore___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabDeriving___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentArray_push___rarg(lean_object*, lean_object*); -lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabDeriving___lambda__3(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getOptDerivingClasses___rarg___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Deriving_Basic_0__Lean_Elab_tryApplyDefHandler___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1317,7 +1317,7 @@ x_24 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_24, 0, x_23); x_25 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_25, 0, x_24); -x_26 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(x_1, x_25, x_2, x_3, x_7); +x_26 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__2(x_1, x_25, x_2, x_3, x_7); return x_26; } else @@ -1388,7 +1388,7 @@ x_51 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_51, 0, x_50); x_52 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_52, 0, x_51); -x_53 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(x_1, x_52, x_2, x_3, x_34); +x_53 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__2(x_1, x_52, x_2, x_3, x_34); return x_53; } } diff --git a/stage0/stdlib/Lean/Elab/Deriving/DecEq.c b/stage0/stdlib/Lean/Elab/Deriving/DecEq.c index 1a24b2be96..e1c7834c53 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/DecEq.c +++ b/stage0/stdlib/Lean/Elab/Deriving/DecEq.c @@ -31,7 +31,6 @@ lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__62; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__3; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___rarg___closed__2; -lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__81; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; @@ -43,7 +42,6 @@ lean_object* l_Lean_getConstInfo___at_Lean_Elab_elabDeriving___spec__14(lean_obj static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__1; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; @@ -184,6 +182,7 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1 static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__8; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__57; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__2; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__36; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -351,6 +350,7 @@ static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAl static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__8; extern lean_object* l_Lean_instInhabitedInductiveVal; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__85; +lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__56; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__7; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; @@ -6751,7 +6751,7 @@ x_23 = 0; x_24 = lean_usize_of_nat(x_15); lean_dec(x_15); x_25 = lean_box(0); -x_26 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_13, x_23, x_24, x_25, x_2, x_3, x_14); +x_26 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_13, x_23, x_24, x_25, x_2, x_3, x_14); lean_dec(x_13); if (lean_obj_tag(x_26) == 0) { @@ -6856,7 +6856,7 @@ x_51 = 0; x_52 = lean_usize_of_nat(x_41); lean_dec(x_41); x_53 = lean_box(0); -x_54 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_39, x_51, x_52, x_53, x_2, x_3, x_40); +x_54 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_39, x_51, x_52, x_53, x_2, x_3, x_40); lean_dec(x_39); if (lean_obj_tag(x_54) == 0) { @@ -7294,7 +7294,7 @@ _start: { lean_object* x_7; lean_inc(x_1); -x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; @@ -7676,7 +7676,7 @@ _start: { lean_object* x_7; lean_inc(x_1); -x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; diff --git a/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c b/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c index 780c86375d..4457387ada 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c +++ b/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c @@ -40,7 +40,6 @@ static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mk lean_object* l_Lean_LocalDecl_userName(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_FromToJson_mkFromJsonInstanceHandler___lambda__1___closed__13; uint8_t lean_usize_dec_eq(size_t, size_t); @@ -198,6 +197,7 @@ lean_object* l_Lean_Expr_fvarId_x21(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkFromJsonInstanceHandler_mkAlts___spec__6___lambda__1___closed__7; static lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler___lambda__4___closed__15; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler_mkAlts___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler___lambda__3___closed__26; static lean_object* l_Array_mapIdxM_map___at_Lean_Elab_Deriving_FromToJson_mkFromJsonInstanceHandler_mkAlts___spec__3___closed__5; static lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler___lambda__1___closed__7; @@ -7320,7 +7320,7 @@ x_35 = 0; x_36 = lean_usize_of_nat(x_28); lean_dec(x_28); x_37 = lean_box(0); -x_38 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_26, x_35, x_36, x_37, x_2, x_3, x_27); +x_38 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_26, x_35, x_36, x_37, x_2, x_3, x_27); lean_dec(x_26); if (lean_obj_tag(x_38) == 0) { @@ -7424,7 +7424,7 @@ x_62 = 0; x_63 = lean_usize_of_nat(x_53); lean_dec(x_53); x_64 = lean_box(0); -x_65 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_51, x_62, x_63, x_64, x_2, x_3, x_52); +x_65 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_51, x_62, x_63, x_64, x_2, x_3, x_52); lean_dec(x_51); if (lean_obj_tag(x_65) == 0) { @@ -7586,7 +7586,7 @@ x_96 = 0; x_97 = lean_usize_of_nat(x_89); lean_dec(x_89); x_98 = lean_box(0); -x_99 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_87, x_96, x_97, x_98, x_2, x_3, x_88); +x_99 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_87, x_96, x_97, x_98, x_2, x_3, x_88); lean_dec(x_87); if (lean_obj_tag(x_99) == 0) { @@ -7690,7 +7690,7 @@ x_123 = 0; x_124 = lean_usize_of_nat(x_114); lean_dec(x_114); x_125 = lean_box(0); -x_126 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_112, x_123, x_124, x_125, x_2, x_3, x_113); +x_126 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_112, x_123, x_124, x_125, x_2, x_3, x_113); lean_dec(x_112); if (lean_obj_tag(x_126) == 0) { @@ -13766,7 +13766,7 @@ x_35 = 0; x_36 = lean_usize_of_nat(x_28); lean_dec(x_28); x_37 = lean_box(0); -x_38 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_26, x_35, x_36, x_37, x_2, x_3, x_27); +x_38 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_26, x_35, x_36, x_37, x_2, x_3, x_27); lean_dec(x_26); if (lean_obj_tag(x_38) == 0) { @@ -13870,7 +13870,7 @@ x_62 = 0; x_63 = lean_usize_of_nat(x_53); lean_dec(x_53); x_64 = lean_box(0); -x_65 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_51, x_62, x_63, x_64, x_2, x_3, x_52); +x_65 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_51, x_62, x_63, x_64, x_2, x_3, x_52); lean_dec(x_51); if (lean_obj_tag(x_65) == 0) { @@ -14032,7 +14032,7 @@ x_96 = 0; x_97 = lean_usize_of_nat(x_89); lean_dec(x_89); x_98 = lean_box(0); -x_99 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_87, x_96, x_97, x_98, x_2, x_3, x_88); +x_99 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_87, x_96, x_97, x_98, x_2, x_3, x_88); lean_dec(x_87); if (lean_obj_tag(x_99) == 0) { @@ -14136,7 +14136,7 @@ x_123 = 0; x_124 = lean_usize_of_nat(x_114); lean_dec(x_114); x_125 = lean_box(0); -x_126 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_112, x_123, x_124, x_125, x_2, x_3, x_113); +x_126 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_112, x_123, x_124, x_125, x_2, x_3, x_113); lean_dec(x_112); if (lean_obj_tag(x_126) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Deriving/Hashable.c b/stage0/stdlib/Lean/Elab/Deriving/Hashable.c index 38dac129de..8fe99857f1 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/Hashable.c +++ b/stage0/stdlib/Lean/Elab/Deriving/Hashable.c @@ -24,7 +24,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_Hashable_mkHashableHandler(lean_ob static lean_object* l_Lean_Elab_Deriving_Hashable_mkAuxFunction___closed__10; static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_Hashable_mkMatch_mkAlts___spec__5___lambda__1___closed__9; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Hashable_mkMatch_mkAlts___spec__4___closed__24; static lean_object* l_Lean_Elab_Deriving_Hashable_mkAuxFunction___closed__24; lean_object* lean_name_mk_string(lean_object*, lean_object*); @@ -102,6 +101,7 @@ lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Deriving_Hashable_0__Lean_Elab_Deriving_Hashable_mkHashableInstanceCmds___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_Hashable_mkMatch___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Hashable_mkMatch_mkAlts___spec__4___closed__6; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isInductive___at_Lean_Elab_Deriving_Hashable_mkHashableHandler___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Hashable_mkMatch_mkAlts___spec__4___closed__23; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Hashable_mkMatch_mkAlts___spec__4___closed__14; @@ -4381,7 +4381,7 @@ x_29 = 0; x_30 = lean_usize_of_nat(x_22); lean_dec(x_22); x_31 = lean_box(0); -x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_20, x_29, x_30, x_31, x_2, x_3, x_21); +x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_20, x_29, x_30, x_31, x_2, x_3, x_21); lean_dec(x_20); if (lean_obj_tag(x_32) == 0) { @@ -4485,7 +4485,7 @@ x_56 = 0; x_57 = lean_usize_of_nat(x_47); lean_dec(x_47); x_58 = lean_box(0); -x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_45, x_56, x_57, x_58, x_2, x_3, x_46); +x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_45, x_56, x_57, x_58, x_2, x_3, x_46); lean_dec(x_45); if (lean_obj_tag(x_59) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Deriving/Ord.c b/stage0/stdlib/Lean/Elab/Deriving/Ord.c index 478d54180d..7f21b22802 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/Ord.c +++ b/stage0/stdlib/Lean/Elab/Deriving/Ord.c @@ -33,7 +33,6 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Ord_mkMatch_mkAlts___spec__3___closed__3; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Ord_mkMatch_mkAlts___spec__5___closed__31; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); lean_object* lean_array_uget(lean_object*, size_t); @@ -116,6 +115,7 @@ lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_Ord_mkOrdInstanceHandler(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); static lean_object* l_Lean_Elab_Deriving_Ord_mkAuxFunction___lambda__1___closed__28; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Ord_mkMatch_mkAlts___spec__5___closed__17; static lean_object* l_Lean_Elab_Deriving_Ord_mkAuxFunction___lambda__1___closed__5; static lean_object* l_Lean_Elab_Deriving_Ord_mkAuxFunction___lambda__1___closed__29; @@ -5698,7 +5698,7 @@ x_29 = 0; x_30 = lean_usize_of_nat(x_22); lean_dec(x_22); x_31 = lean_box(0); -x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_20, x_29, x_30, x_31, x_2, x_3, x_21); +x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_20, x_29, x_30, x_31, x_2, x_3, x_21); lean_dec(x_20); if (lean_obj_tag(x_32) == 0) { @@ -5802,7 +5802,7 @@ x_56 = 0; x_57 = lean_usize_of_nat(x_47); lean_dec(x_47); x_58 = lean_box(0); -x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_45, x_56, x_57, x_58, x_2, x_3, x_46); +x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_45, x_56, x_57, x_58, x_2, x_3, x_46); lean_dec(x_45); if (lean_obj_tag(x_59) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Deriving/Repr.c b/stage0/stdlib/Lean/Elab/Deriving/Repr.c index e404e0ee9b..af0fb75e77 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/Repr.c +++ b/stage0/stdlib/Lean/Elab/Deriving/Repr.c @@ -28,7 +28,6 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Repr_mkBodyForInduct_mkAlts___spec__1___closed__2; static lean_object* l_Lean_Elab_Deriving_Repr_mkBodyForStruct___rarg___lambda__2___closed__7; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); lean_object* lean_array_uget(lean_object*, size_t); @@ -141,6 +140,7 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_Repr_mkM lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_Repr_mkBodyForStruct___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_Repr_mkAuxFunction___lambda__1___closed__4; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_Repr_mkAuxFunction___lambda__1___closed__27; static lean_object* l_Lean_Elab_Deriving_Repr_mkReprHeader___rarg___closed__19; static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_Repr_mkBodyForInduct_mkAlts___spec__3___lambda__1___closed__27; @@ -7657,7 +7657,7 @@ x_29 = 0; x_30 = lean_usize_of_nat(x_22); lean_dec(x_22); x_31 = lean_box(0); -x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_20, x_29, x_30, x_31, x_2, x_3, x_21); +x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_20, x_29, x_30, x_31, x_2, x_3, x_21); lean_dec(x_20); if (lean_obj_tag(x_32) == 0) { @@ -7761,7 +7761,7 @@ x_56 = 0; x_57 = lean_usize_of_nat(x_47); lean_dec(x_47); x_58 = lean_box(0); -x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__10(x_45, x_56, x_57, x_58, x_2, x_3, x_46); +x_59 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__15(x_45, x_56, x_57, x_58, x_2, x_3, x_46); lean_dec(x_45); if (lean_obj_tag(x_59) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Do.c b/stage0/stdlib/Lean/Elab/Do.c index dd47069d70..710ac5e86c 100644 --- a/stage0/stdlib/Lean/Elab/Do.c +++ b/stage0/stdlib/Lean/Elab/Do.c @@ -6900,11 +6900,8 @@ return x_8; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_Do_mkJmp___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -6921,36 +6918,42 @@ return x_9; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_10; lean_object* x_11; x_10 = lean_ctor_get(x_6, 0); lean_inc(x_10); lean_dec(x_6); -x_11 = lean_ctor_get(x_5, 1); +x_11 = lean_ctor_get(x_10, 1); lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); lean_dec(x_10); -x_13 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_13, 0, x_12); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_dec(x_11); +x_12 = lean_ctor_get(x_5, 1); +lean_inc(x_12); +lean_dec(x_5); +x_13 = lean_box(0); x_14 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_14, 0, x_13); -lean_ctor_set(x_14, 1, x_11); +lean_ctor_set(x_14, 1, x_12); return x_14; } -} else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_5, 0); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_5, 1); lean_inc(x_15); -x_16 = lean_ctor_get(x_5, 1); -lean_inc(x_16); lean_dec(x_5); -x_17 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_17, 0, x_15); -lean_ctor_set(x_17, 1, x_16); -return x_17; +x_16 = lean_ctor_get(x_11, 0); +lean_inc(x_16); +lean_dec(x_11); +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_15); +return x_18; +} } } } diff --git a/stage0/stdlib/Lean/Elab/ElabRules.c b/stage0/stdlib/Lean/Elab/ElabRules.c index 6ba35fc7d4..5977927867 100644 --- a/stage0/stdlib/Lean/Elab/ElabRules.c +++ b/stage0/stdlib/Lean/Elab/ElabRules.c @@ -18,47 +18,45 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__3 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__59; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__82; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__116; size_t lean_usize_add(size_t, size_t); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__12; static lean_object* l___regBuiltin_Lean_Elab_Command_elabElabRules___closed__3; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__102; static lean_object* l___regBuiltin_Lean_Elab_Command_elabElabRules___closed__2; lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__90; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10; lean_object* l_Lean_Elab_Command_expandMacroArg(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__7___closed__2; lean_object* l_Lean_Elab_Command_expandNoKindMacroRulesAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__1; +lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(lean_object*); extern lean_object* l_Lean_nullKind; +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Macro_getCurrNamespace(lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__92; static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__7___closed__1; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10; lean_object* l_Array_append___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__112; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__61; extern lean_object* l_Lean_Elab_Command_commandElabAttribute; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__68; LEAN_EXPORT lean_object* l_Lean_Elab_Command_withExpectedType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__87; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1(lean_object*, lean_object*); lean_object* l_Lean_MonadRef_mkInfoFromRefPos___at_Lean_Elab_Command_elabAuxDef___spec__4(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__21; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__38; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__107; static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__2; uint8_t lean_name_eq(lean_object*, lean_object*); @@ -74,16 +72,20 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__9 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__8; lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__7___closed__4; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__57; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandElab(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__111; lean_object* lean_string_utf8_byte_size(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__48; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__4; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13; lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__89; lean_object* l_Lean_Elab_Command_mkNameFromParserSyntax(lean_object*, lean_object*, lean_object*, lean_object*); @@ -94,6 +96,7 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__6 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__47; static lean_object* l_Lean_Elab_Command_expandElab___lambda__3___closed__1; static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__5; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRulesAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_resolveSyntaxKind(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_SepArray_ofElems(lean_object*, lean_object*); @@ -107,10 +110,7 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__4 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__65; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__109; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__1___boxed(lean_object**); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__118; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__9; lean_object* l_Lean_Elab_Term_tryPostponeIfNoneOrMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__51; @@ -118,27 +118,23 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__4(lean_object* static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__39; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__64; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__97; -LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___closed__1; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandElab___closed__2; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__17; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabElabRules(lean_object*); extern lean_object* l_Lean_numLitKind; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__83; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__76; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__18; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__30; lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__5; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__14; static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__6; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__28; @@ -147,76 +143,75 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__119; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__29; static lean_object* l___regBuiltin_Lean_Elab_Command_elabElabRules___closed__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Nat_repr(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; static lean_object* l_Lean_Elab_Command_withExpectedType___closed__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__52; lean_object* l_Lean_Syntax_getId(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__55; static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__2; lean_object* l_Lean_throwError___at_Lean_Elab_Command_resolveSyntaxKind___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_adaptExpander(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_choiceKind; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__42; +lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__100; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__103; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; static lean_object* l_Lean_Elab_Command_withExpectedType___closed__2; +LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__37; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__78; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__91; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__93; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__22; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__7; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__25; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__86; lean_object* l_Array_unzip___rarg(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__46; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7; extern lean_object* l_Lean_instInhabitedSyntax; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___boxed(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__34; lean_object* l_Lean_evalOptPrio(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__13; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__41; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__88; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__96; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__72; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__3; lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__84; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__62; static lean_object* l_Lean_Elab_Command_expandElab___closed__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__33; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__110; uint8_t l_Lean_Syntax_isNodeOf(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__7___closed__3; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__54; static lean_object* l_Lean_Elab_Command_elabElabRules___lambda__3___closed__5; lean_object* l_Lean_Syntax_getQuotContent(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__99; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__50; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__6; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__80; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__79; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__95; extern lean_object* l_Lean_Elab_macroAttribute; lean_object* l_Lean_Syntax_setArg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__66; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__56; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__115; lean_object* l_Lean_Elab_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandElab___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); @@ -225,11 +220,12 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1 static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__85; lean_object* l_Lean_Syntax_getKind(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__16; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_inferMacroRulesAltKind___spec__2___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__101; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__43; lean_object* l_Lean_Elab_Command_getMainModule___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__120; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__20; lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object*); @@ -241,13 +237,11 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__3 LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__10; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__49; -static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1; uint8_t l_Lean_Syntax_isNone(lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__24; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__63; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__106; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__53; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -258,7 +252,7 @@ static lean_object* l_Lean_Elab_Command_expandElab___lambda__1___closed__4; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__98; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__81; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab(lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandElab___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__77; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__117; @@ -267,6 +261,7 @@ LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_expandElab lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__108; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRulesAux___boxed__const__1; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__7; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__71; @@ -287,7 +282,8 @@ static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1 LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandElab___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__104; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__36; -lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__19; static lean_object* l___regBuiltin_Lean_Elab_Command_expandElab___closed__3; lean_object* l_Lean_throwError___at_Lean_Elab_Term_synthesizeInst___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -297,7 +293,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__1___boxed(l lean_object* l_Lean_Syntax_mkLit(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabElabRules___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__35; -lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14; static lean_object* _init_l_Lean_Elab_Command_withExpectedType___closed__1() { _start: { @@ -389,38 +385,7 @@ return x_20; } } } -static lean_object* _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_unsupportedSyntaxExceptionId; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg), 1, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { _start: { uint8_t x_7; @@ -466,14 +431,14 @@ return x_16; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_inc(x_1); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -481,7 +446,7 @@ x_1 = lean_mk_string("|"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2() { _start: { lean_object* x_1; @@ -489,17 +454,17 @@ x_1 = lean_mk_string("null"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -508,7 +473,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5() { _start: { lean_object* x_1; @@ -516,7 +481,7 @@ x_1 = lean_mk_string(","); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6() { _start: { lean_object* x_1; @@ -524,7 +489,7 @@ x_1 = lean_mk_string("=>"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -533,7 +498,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8() { _start: { lean_object* x_1; @@ -541,16 +506,16 @@ x_1 = lean_mk_string("invalid elab_rules alternative, unexpected syntax node kin return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10() { _start: { lean_object* x_1; @@ -558,16 +523,16 @@ x_1 = lean_mk_string("'"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -579,7 +544,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13() { _start: { lean_object* x_1; @@ -587,16 +552,16 @@ x_1 = lean_mk_string("invalid elab_rules alternative, expected syntax node kind return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -621,15 +586,15 @@ lean_dec(x_2); lean_dec(x_1); x_16 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_16, 0, x_12); -x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9; +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9; x_18 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_16); -x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11; +x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11; x_20 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_20, 0, x_18); lean_ctor_set(x_20, 1, x_19); -x_21 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_6, x_20, x_8, x_9, x_10); +x_21 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_6, x_20, x_8, x_9, x_10); return x_21; } else @@ -642,8 +607,8 @@ x_23 = lean_array_get_size(x_22); x_24 = lean_usize_of_nat(x_23); lean_dec(x_23); x_25 = 0; -x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12; -x_27 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2(x_5, x_26, x_22, x_24, x_25, x_26); +x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12; +x_27 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1(x_5, x_26, x_22, x_24, x_25, x_26); lean_dec(x_22); x_28 = lean_ctor_get(x_27, 0); lean_inc(x_28); @@ -657,15 +622,15 @@ lean_dec(x_2); lean_dec(x_1); x_29 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_29, 0, x_5); -x_30 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14; +x_30 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14; x_31 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_29); -x_32 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11; +x_32 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11; x_33 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_33, 0, x_31); lean_ctor_set(x_33, 1, x_32); -x_34 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_6, x_33, x_8, x_9, x_10); +x_34 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_6, x_33, x_8, x_9, x_10); return x_34; } else @@ -699,27 +664,27 @@ if (x_46 == 0) lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; x_47 = lean_ctor_get(x_45, 0); lean_dec(x_47); -x_48 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_48 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_41); x_49 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_49, 0, x_41); lean_ctor_set(x_49, 1, x_48); -x_50 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5; +x_50 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5; x_51 = l_Lean_Syntax_SepArray_ofElems(x_50, x_39); lean_dec(x_39); -x_52 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_52 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_53 = l_Array_append___rarg(x_52, x_51); x_54 = lean_box(2); -x_55 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_55 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_56 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_56, 0, x_54); lean_ctor_set(x_56, 1, x_55); lean_ctor_set(x_56, 2, x_53); -x_57 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_57 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; x_58 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_58, 0, x_41); lean_ctor_set(x_58, 1, x_57); -x_59 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_59 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_60 = lean_array_push(x_59, x_49); x_61 = lean_array_push(x_60, x_56); x_62 = lean_array_push(x_61, x_58); @@ -737,27 +702,27 @@ lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean x_65 = lean_ctor_get(x_45, 1); lean_inc(x_65); lean_dec(x_45); -x_66 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_66 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_41); x_67 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_67, 0, x_41); lean_ctor_set(x_67, 1, x_66); -x_68 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5; +x_68 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5; x_69 = l_Lean_Syntax_SepArray_ofElems(x_68, x_39); lean_dec(x_39); -x_70 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_70 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_71 = l_Array_append___rarg(x_70, x_69); x_72 = lean_box(2); -x_73 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_73 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_74 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_74, 0, x_72); lean_ctor_set(x_74, 1, x_73); lean_ctor_set(x_74, 2, x_71); -x_75 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_75 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; x_76 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_76, 0, x_41); lean_ctor_set(x_76, 1, x_75); -x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_78 = lean_array_push(x_77, x_67); x_79 = lean_array_push(x_78, x_74); x_80 = lean_array_push(x_79, x_76); @@ -793,7 +758,7 @@ return x_84; } } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1() { _start: { lean_object* x_1; @@ -801,17 +766,17 @@ x_1 = lean_mk_string("Lean"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3() { _start: { lean_object* x_1; @@ -819,17 +784,17 @@ x_1 = lean_mk_string("Parser"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5() { _start: { lean_object* x_1; @@ -837,17 +802,17 @@ x_1 = lean_mk_string("Term"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7() { _start: { lean_object* x_1; @@ -855,17 +820,17 @@ x_1 = lean_mk_string("matchAlt"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -889,7 +854,7 @@ x_11 = lean_array_uget(x_4, x_3); x_12 = lean_unsigned_to_nat(0u); x_13 = lean_array_uset(x_4, x_3, x_12); x_14 = x_11; -x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; lean_inc(x_14); x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); if (x_16 == 0) @@ -900,7 +865,7 @@ lean_dec(x_13); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_7); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_7); x_18 = !lean_is_exclusive(x_17); if (x_18 == 0) { @@ -970,7 +935,7 @@ x_35 = lean_box(0); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2(x_28, x_26, x_25, x_15, x_1, x_14, x_35, x_5, x_6, x_7); +x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2(x_28, x_26, x_25, x_15, x_1, x_14, x_35, x_5, x_6, x_7); if (lean_obj_tag(x_36) == 0) { lean_object* x_37; lean_object* x_38; size_t x_39; size_t x_40; lean_object* x_41; lean_object* x_42; @@ -1019,7 +984,7 @@ return x_47; } } } -LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; uint8_t x_6; @@ -1132,7 +1097,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__9; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1186,7 +1151,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__15; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1212,7 +1177,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__18; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1230,7 +1195,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__20; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1241,8 +1206,8 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; -x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; +x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -1295,7 +1260,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__26; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1530,7 +1495,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__50; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1548,7 +1513,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__52; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1566,7 +1531,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__54; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1668,7 +1633,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_2 = l_Array_append___rarg(x_1, x_1); return x_2; } @@ -1678,7 +1643,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_3 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__65; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); @@ -1888,7 +1853,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__10; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } @@ -1947,7 +1912,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__91; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -2006,7 +1971,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__97; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -2024,7 +1989,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__99; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -2144,7 +2109,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__112; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -2253,11 +2218,11 @@ x_16 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__8; x_17 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); -x_18 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11; +x_18 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11; x_19 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); -x_20 = l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(x_19, x_6, x_7, x_8); +x_20 = l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__12(x_19, x_6, x_7, x_8); lean_dec(x_7); return x_20; } @@ -2266,7 +2231,7 @@ else lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_dec(x_5); lean_inc(x_2); -x_21 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(x_2, x_6, x_7, x_8); +x_21 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_2, x_6, x_7, x_8); x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_ctor_get(x_21, 1); @@ -2311,7 +2276,7 @@ lean_ctor_set(x_38, 3, x_36); x_39 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_40 = lean_array_push(x_39, x_22); x_41 = lean_box(2); -x_42 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_42 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_43 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_43, 0, x_41); lean_ctor_set(x_43, 1, x_42); @@ -2405,9 +2370,9 @@ lean_inc(x_25); x_85 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_85, 0, x_25); lean_ctor_set(x_85, 1, x_84); -x_86 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_86 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_87 = l_Array_append___rarg(x_86, x_3); -x_88 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_88 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_25); x_89 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_89, 0, x_25); @@ -2428,7 +2393,7 @@ x_96 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_96, 0, x_41); lean_ctor_set(x_96, 1, x_42); lean_ctor_set(x_96, 2, x_95); -x_97 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_97 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_25); x_98 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_98, 0, x_25); @@ -2442,12 +2407,12 @@ lean_ctor_set(x_103, 0, x_25); lean_ctor_set(x_103, 1, x_101); lean_ctor_set(x_103, 2, x_100); lean_ctor_set(x_103, 3, x_102); -x_104 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_104 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_105 = lean_array_push(x_104, x_89); x_106 = lean_array_push(x_105, x_96); x_107 = lean_array_push(x_106, x_98); x_108 = lean_array_push(x_107, x_103); -x_109 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_109 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_110 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_110, 0, x_41); lean_ctor_set(x_110, 1, x_109); @@ -2546,7 +2511,7 @@ lean_ctor_set(x_152, 3, x_150); x_153 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_154 = lean_array_push(x_153, x_22); x_155 = lean_box(2); -x_156 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_156 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_157 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_157, 0, x_155); lean_ctor_set(x_157, 1, x_156); @@ -2640,9 +2605,9 @@ lean_inc(x_25); x_199 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_199, 0, x_25); lean_ctor_set(x_199, 1, x_198); -x_200 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_200 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_201 = l_Array_append___rarg(x_200, x_3); -x_202 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_202 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_25); x_203 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_203, 0, x_25); @@ -2663,7 +2628,7 @@ x_210 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_210, 0, x_155); lean_ctor_set(x_210, 1, x_156); lean_ctor_set(x_210, 2, x_209); -x_211 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_211 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_25); x_212 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_212, 0, x_25); @@ -2677,12 +2642,12 @@ lean_ctor_set(x_217, 0, x_25); lean_ctor_set(x_217, 1, x_215); lean_ctor_set(x_217, 2, x_214); lean_ctor_set(x_217, 3, x_216); -x_218 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_218 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_219 = lean_array_push(x_218, x_203); x_220 = lean_array_push(x_219, x_210); x_221 = lean_array_push(x_220, x_212); x_222 = lean_array_push(x_221, x_217); -x_223 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_223 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_224 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_224, 0, x_155); lean_ctor_set(x_224, 1, x_223); @@ -2765,7 +2730,7 @@ else lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; uint8_t x_271; lean_dec(x_5); lean_inc(x_2); -x_261 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(x_2, x_6, x_7, x_8); +x_261 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_2, x_6, x_7, x_8); x_262 = lean_ctor_get(x_261, 0); lean_inc(x_262); x_263 = lean_ctor_get(x_261, 1); @@ -2811,7 +2776,7 @@ lean_ctor_set(x_279, 3, x_277); x_280 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_281 = lean_array_push(x_280, x_262); x_282 = lean_box(2); -x_283 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_283 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_284 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_284, 0, x_282); lean_ctor_set(x_284, 1, x_283); @@ -2905,9 +2870,9 @@ lean_inc(x_265); x_326 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_326, 0, x_265); lean_ctor_set(x_326, 1, x_325); -x_327 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_327 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_328 = l_Array_append___rarg(x_327, x_3); -x_329 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_329 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_265); x_330 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_330, 0, x_265); @@ -2928,7 +2893,7 @@ x_337 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_337, 0, x_282); lean_ctor_set(x_337, 1, x_283); lean_ctor_set(x_337, 2, x_336); -x_338 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_338 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_265); x_339 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_339, 0, x_265); @@ -2942,12 +2907,12 @@ lean_ctor_set(x_344, 0, x_265); lean_ctor_set(x_344, 1, x_342); lean_ctor_set(x_344, 2, x_341); lean_ctor_set(x_344, 3, x_343); -x_345 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_345 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_346 = lean_array_push(x_345, x_330); x_347 = lean_array_push(x_346, x_337); x_348 = lean_array_push(x_347, x_339); x_349 = lean_array_push(x_348, x_344); -x_350 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_350 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_351 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_351, 0, x_282); lean_ctor_set(x_351, 1, x_350); @@ -3047,7 +3012,7 @@ lean_ctor_set(x_394, 3, x_392); x_395 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_396 = lean_array_push(x_395, x_262); x_397 = lean_box(2); -x_398 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_398 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_399 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_399, 0, x_397); lean_ctor_set(x_399, 1, x_398); @@ -3141,9 +3106,9 @@ lean_inc(x_265); x_441 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_441, 0, x_265); lean_ctor_set(x_441, 1, x_440); -x_442 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_442 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_443 = l_Array_append___rarg(x_442, x_3); -x_444 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_444 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_265); x_445 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_445, 0, x_265); @@ -3164,7 +3129,7 @@ x_452 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_452, 0, x_397); lean_ctor_set(x_452, 1, x_398); lean_ctor_set(x_452, 2, x_451); -x_453 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_453 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_265); x_454 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_454, 0, x_265); @@ -3178,12 +3143,12 @@ lean_ctor_set(x_459, 0, x_265); lean_ctor_set(x_459, 1, x_457); lean_ctor_set(x_459, 2, x_456); lean_ctor_set(x_459, 3, x_458); -x_460 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_460 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_461 = lean_array_push(x_460, x_445); x_462 = lean_array_push(x_461, x_452); x_463 = lean_array_push(x_462, x_454); x_464 = lean_array_push(x_463, x_459); -x_465 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_465 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_466 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_466, 0, x_397); lean_ctor_set(x_466, 1, x_465); @@ -3266,7 +3231,7 @@ else lean_object* x_503; lean_object* x_504; lean_object* x_505; lean_object* x_506; lean_object* x_507; lean_object* x_508; lean_object* x_509; lean_object* x_510; lean_object* x_511; lean_object* x_512; uint8_t x_513; lean_dec(x_5); lean_inc(x_2); -x_503 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(x_2, x_6, x_7, x_8); +x_503 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_2, x_6, x_7, x_8); x_504 = lean_ctor_get(x_503, 0); lean_inc(x_504); x_505 = lean_ctor_get(x_503, 1); @@ -3312,7 +3277,7 @@ lean_ctor_set(x_521, 3, x_519); x_522 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_523 = lean_array_push(x_522, x_504); x_524 = lean_box(2); -x_525 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_525 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_526 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_526, 0, x_524); lean_ctor_set(x_526, 1, x_525); @@ -3436,7 +3401,7 @@ x_580 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_580, 0, x_524); lean_ctor_set(x_580, 1, x_525); lean_ctor_set(x_580, 2, x_579); -x_581 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_581 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_507); x_582 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_582, 0, x_507); @@ -3463,9 +3428,9 @@ lean_inc(x_507); x_592 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_592, 0, x_507); lean_ctor_set(x_592, 1, x_591); -x_593 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_593 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_594 = l_Array_append___rarg(x_593, x_3); -x_595 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_595 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_507); x_596 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_596, 0, x_507); @@ -3484,13 +3449,13 @@ lean_ctor_set(x_603, 0, x_507); lean_ctor_set(x_603, 1, x_601); lean_ctor_set(x_603, 2, x_600); lean_ctor_set(x_603, 3, x_602); -x_604 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_604 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_605 = lean_array_push(x_604, x_596); x_606 = lean_array_push(x_605, x_598); lean_inc(x_582); x_607 = lean_array_push(x_606, x_582); x_608 = lean_array_push(x_607, x_603); -x_609 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_609 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_610 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_610, 0, x_524); lean_ctor_set(x_610, 1, x_609); @@ -3611,7 +3576,7 @@ lean_ctor_set(x_668, 3, x_666); x_669 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_670 = lean_array_push(x_669, x_504); x_671 = lean_box(2); -x_672 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_672 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_673 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_673, 0, x_671); lean_ctor_set(x_673, 1, x_672); @@ -3735,7 +3700,7 @@ x_727 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_727, 0, x_671); lean_ctor_set(x_727, 1, x_672); lean_ctor_set(x_727, 2, x_726); -x_728 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_728 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_507); x_729 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_729, 0, x_507); @@ -3762,9 +3727,9 @@ lean_inc(x_507); x_739 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_739, 0, x_507); lean_ctor_set(x_739, 1, x_738); -x_740 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_740 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_741 = l_Array_append___rarg(x_740, x_3); -x_742 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_742 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_507); x_743 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_743, 0, x_507); @@ -3783,13 +3748,13 @@ lean_ctor_set(x_750, 0, x_507); lean_ctor_set(x_750, 1, x_748); lean_ctor_set(x_750, 2, x_747); lean_ctor_set(x_750, 3, x_749); -x_751 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_751 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_752 = lean_array_push(x_751, x_743); x_753 = lean_array_push(x_752, x_745); lean_inc(x_729); x_754 = lean_array_push(x_753, x_729); x_755 = lean_array_push(x_754, x_750); -x_756 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_756 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_757 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_757, 0, x_671); lean_ctor_set(x_757, 1, x_756); @@ -3912,7 +3877,7 @@ x_815 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__107; x_816 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_816, 0, x_814); lean_ctor_set(x_816, 1, x_815); -x_817 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_809, x_816, x_6, x_7, x_8); +x_817 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_809, x_816, x_6, x_7, x_8); return x_817; } else @@ -3920,7 +3885,7 @@ else lean_object* x_818; lean_object* x_819; lean_object* x_820; lean_object* x_821; lean_object* x_822; lean_object* x_823; lean_object* x_824; lean_object* x_825; lean_object* x_826; lean_object* x_827; uint8_t x_828; lean_dec(x_5); lean_inc(x_2); -x_818 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(x_2, x_6, x_7, x_8); +x_818 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_2, x_6, x_7, x_8); x_819 = lean_ctor_get(x_818, 0); lean_inc(x_819); x_820 = lean_ctor_get(x_818, 1); @@ -3966,7 +3931,7 @@ lean_ctor_set(x_836, 3, x_834); x_837 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_838 = lean_array_push(x_837, x_819); x_839 = lean_box(2); -x_840 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_840 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_841 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_841, 0, x_839); lean_ctor_set(x_841, 1, x_840); @@ -4090,7 +4055,7 @@ x_894 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_894, 0, x_839); lean_ctor_set(x_894, 1, x_840); lean_ctor_set(x_894, 2, x_893); -x_895 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_895 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_822); x_896 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_896, 0, x_822); @@ -4134,9 +4099,9 @@ lean_inc(x_822); x_913 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_913, 0, x_822); lean_ctor_set(x_913, 1, x_912); -x_914 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_914 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_915 = l_Array_append___rarg(x_914, x_3); -x_916 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_916 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_822); x_917 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_917, 0, x_822); @@ -4166,13 +4131,13 @@ lean_ctor_set(x_929, 0, x_822); lean_ctor_set(x_929, 1, x_927); lean_ctor_set(x_929, 2, x_926); lean_ctor_set(x_929, 3, x_928); -x_930 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_930 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_931 = lean_array_push(x_930, x_917); x_932 = lean_array_push(x_931, x_924); lean_inc(x_896); x_933 = lean_array_push(x_932, x_896); x_934 = lean_array_push(x_933, x_929); -x_935 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_935 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_936 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_936, 0, x_839); lean_ctor_set(x_936, 1, x_935); @@ -4320,7 +4285,7 @@ lean_ctor_set(x_1007, 3, x_1005); x_1008 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_1009 = lean_array_push(x_1008, x_819); x_1010 = lean_box(2); -x_1011 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_1011 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_1012 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_1012, 0, x_1010); lean_ctor_set(x_1012, 1, x_1011); @@ -4444,7 +4409,7 @@ x_1065 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_1065, 0, x_1010); lean_ctor_set(x_1065, 1, x_1011); lean_ctor_set(x_1065, 2, x_1064); -x_1066 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_1066 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_822); x_1067 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_1067, 0, x_822); @@ -4488,9 +4453,9 @@ lean_inc(x_822); x_1084 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_1084, 0, x_822); lean_ctor_set(x_1084, 1, x_1083); -x_1085 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_1085 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_1086 = l_Array_append___rarg(x_1085, x_3); -x_1087 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_1087 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_822); x_1088 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_1088, 0, x_822); @@ -4520,13 +4485,13 @@ lean_ctor_set(x_1100, 0, x_822); lean_ctor_set(x_1100, 1, x_1098); lean_ctor_set(x_1100, 2, x_1097); lean_ctor_set(x_1100, 3, x_1099); -x_1101 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_1101 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_1102 = lean_array_push(x_1101, x_1088); x_1103 = lean_array_push(x_1102, x_1095); lean_inc(x_1067); x_1104 = lean_array_push(x_1103, x_1067); x_1105 = lean_array_push(x_1104, x_1100); -x_1106 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8; +x_1106 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8; x_1107 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_1107, 0, x_1010); lean_ctor_set(x_1107, 1, x_1106); @@ -4692,7 +4657,7 @@ x_12 = x_6; x_13 = lean_box_usize(x_11); x_14 = l_Lean_Elab_Command_elabElabRulesAux___boxed__const__1; lean_inc(x_3); -x_15 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___boxed), 7, 4); +x_15 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___boxed), 7, 4); lean_closure_set(x_15, 0, x_3); lean_closure_set(x_15, 1, x_13); lean_closure_set(x_15, 2, x_14); @@ -4795,17 +4760,7 @@ return x_37; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -4813,7 +4768,7 @@ x_7 = lean_unbox_usize(x_4); lean_dec(x_4); x_8 = lean_unbox_usize(x_5); lean_dec(x_5); -x_9 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__2(x_1, x_2, x_3, x_7, x_8, x_6); +x_9 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabElabRulesAux___spec__1(x_1, x_2, x_3, x_7, x_8, x_6); lean_dec(x_6); lean_dec(x_3); lean_dec(x_2); @@ -4821,26 +4776,26 @@ lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__1(x_1, x_2); +x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__1(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_7); return x_11; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { size_t x_8; size_t x_9; lean_object* x_10; @@ -4848,15 +4803,15 @@ x_8 = lean_unbox_usize(x_2); lean_dec(x_2); x_9 = lean_unbox_usize(x_3); lean_dec(x_3); -x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_1, x_8, x_9, x_4, x_5, x_6, x_7); +x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2(x_1, x_8, x_9, x_4, x_5, x_6, x_7); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_mkIdentFromRef___at_Lean_Elab_Command_elabElabRulesAux___spec__3(x_1, x_2, x_3, x_4); lean_dec(x_3); lean_dec(x_2); return x_5; @@ -4883,7 +4838,7 @@ lean_dec(x_8); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_11); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_11); return x_17; } else @@ -4966,7 +4921,7 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_10); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_10); return x_17; } else @@ -5081,10 +5036,10 @@ lean_inc(x_13); x_21 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_21, 0, x_13); lean_ctor_set(x_21, 1, x_20); -x_22 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_22 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_23 = l_Array_append___rarg(x_22, x_8); x_24 = lean_box(2); -x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_26 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_26, 0, x_24); lean_ctor_set(x_26, 1, x_25); @@ -5283,7 +5238,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_11); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_11); return x_17; } else @@ -5303,6 +5258,7 @@ lean_closure_set(x_21, 4, x_5); lean_closure_set(x_21, 5, x_6); x_22 = l_Lean_Elab_Command_elabElabRules___lambda__3___closed__1; x_23 = l_Lean_Elab_Command_expandNoKindMacroRulesAux(x_20, x_22, x_21, x_9, x_10, x_11); +lean_dec(x_20); return x_23; } } @@ -5333,7 +5289,7 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_10); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_10); return x_17; } else @@ -5367,7 +5323,7 @@ lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_ lean_dec(x_4); x_9 = lean_unsigned_to_nat(1u); x_10 = l_Lean_Syntax_getArg(x_1, x_9); -x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5; +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5; x_12 = lean_name_mk_string(x_2, x_11); x_13 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__20; lean_inc(x_12); @@ -5384,7 +5340,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); -x_16 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_8); +x_16 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_8); return x_16; } else @@ -5412,7 +5368,7 @@ lean_dec(x_10); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_24 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_8); +x_24 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_8); return x_24; } else @@ -5439,7 +5395,7 @@ lean_dec(x_10); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_31 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_8); +x_31 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_8); return x_31; } else @@ -5490,7 +5446,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); -x_44 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_8); +x_44 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_8); return x_44; } else @@ -5522,7 +5478,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabElabRules___lambda__7___closed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_2 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__11; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -5569,7 +5525,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_7; } else @@ -5592,7 +5548,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_14 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_4); +x_14 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_14; } else @@ -5610,7 +5566,7 @@ lean_dec(x_15); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_18 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg(x_4); +x_18 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_18; } else @@ -5618,7 +5574,7 @@ else lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; x_19 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_19, 0, x_15); -x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_21 = lean_box(0); x_22 = l_Lean_Elab_Command_elabElabRules___lambda__6(x_1, x_20, x_5, x_21, x_19, x_2, x_3, x_4); lean_dec(x_1); @@ -5631,7 +5587,7 @@ else lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_dec(x_9); x_23 = lean_box(0); -x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_25 = lean_box(0); x_26 = l_Lean_Elab_Command_elabElabRules___lambda__6(x_1, x_24, x_5, x_25, x_23, x_2, x_3, x_4); lean_dec(x_1); @@ -6006,7 +5962,7 @@ lean_ctor_set(x_50, 1, x_35); lean_ctor_set(x_50, 2, x_49); x_51 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__23; x_52 = lean_array_push(x_51, x_50); -x_53 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3; +x_53 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3; x_54 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_54, 0, x_22); lean_ctor_set(x_54, 1, x_53); @@ -6042,7 +5998,7 @@ lean_dec(x_69); x_71 = x_4; x_72 = l_Array_mapMUnsafe_map___at___aux__Init__NotationExtra______macroRules___xabterm_x25_x5b___x7c___x5d_xbb__1___spec__3(x_70, x_5, x_71); x_73 = x_72; -x_74 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4; +x_74 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4; x_75 = l_Array_append___rarg(x_74, x_73); x_76 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_76, 0, x_22); @@ -6077,10 +6033,10 @@ lean_ctor_set(x_87, 2, x_86); x_88 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__52; lean_inc(x_8); x_89 = lean_name_mk_string(x_8, x_88); -x_90 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7; +x_90 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7; lean_inc(x_8); x_91 = lean_name_mk_string(x_8, x_90); -x_92 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1; +x_92 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_28); x_93 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_93, 0, x_28); @@ -6105,12 +6061,12 @@ x_104 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_104, 0, x_22); lean_ctor_set(x_104, 1, x_53); lean_ctor_set(x_104, 2, x_103); -x_105 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6; +x_105 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_28); x_106 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_106, 0, x_28); lean_ctor_set(x_106, 1, x_105); -x_107 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7; +x_107 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7; x_108 = lean_array_push(x_107, x_93); x_109 = lean_array_push(x_108, x_104); x_110 = lean_array_push(x_109, x_106); @@ -6817,7 +6773,7 @@ lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_o lean_dec(x_4); x_8 = lean_unsigned_to_nat(1u); x_9 = l_Lean_Syntax_getArg(x_1, x_8); -x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5; +x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5; lean_inc(x_2); x_11 = lean_name_mk_string(x_2, x_10); x_12 = l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__20; @@ -7013,7 +6969,7 @@ else lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; x_21 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_21, 0, x_16); -x_22 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_22 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_23 = l_Lean_Elab_Command_elabElabRules___lambda__7___closed__1; x_24 = lean_box(0); x_25 = l_Lean_Elab_Command_expandElab___lambda__6(x_1, x_22, x_23, x_24, x_21, x_2, x_3); @@ -7026,7 +6982,7 @@ else lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_dec(x_9); x_26 = lean_box(0); -x_27 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4; +x_27 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4; x_28 = l_Lean_Elab_Command_elabElabRules___lambda__7___closed__1; x_29 = lean_box(0); x_30 = l_Lean_Elab_Command_expandElab___lambda__6(x_1, x_27, x_28, x_29, x_26, x_2, x_3); @@ -7133,52 +7089,50 @@ l_Lean_Elab_Command_withExpectedType___closed__1 = _init_l_Lean_Elab_Command_wit lean_mark_persistent(l_Lean_Elab_Command_withExpectedType___closed__1); l_Lean_Elab_Command_withExpectedType___closed__2 = _init_l_Lean_Elab_Command_withExpectedType___closed__2(); lean_mark_persistent(l_Lean_Elab_Command_withExpectedType___closed__2); -l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1(); -lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabElabRulesAux___spec__1___rarg___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__2); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__3); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__4); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__5); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__6); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__7); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__8); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__9); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__10); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__11); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__12); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__13); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___lambda__2___closed__14); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__2); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__3); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__4); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__5); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__6); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__7); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__3___closed__8); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__3); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__4); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__5); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__6); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__7); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__8); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__9); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__10); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__11); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__12); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__13); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___lambda__2___closed__14); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__3); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__4); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__5); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__6); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__7); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabElabRulesAux___spec__2___closed__8); l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1 = _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__1); l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__2 = _init_l_Lean_Elab_Command_elabElabRulesAux___lambda__1___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Frontend.c b/stage0/stdlib/Lean/Elab/Frontend.c index 80cca4d835..d57a4216b6 100644 --- a/stage0/stdlib/Lean/Elab/Frontend.c +++ b/stage0/stdlib/Lean/Elab/Frontend.c @@ -22,7 +22,7 @@ lean_object* lean_name_mk_string(lean_object*, lean_object*); lean_object* l_Lean_Parser_parseHeader(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_State_commands___default; LEAN_EXPORT lean_object* l_Lean_Elab_IO_processCommands(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* lean_run_frontend(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* lean_run_frontend(lean_object*, lean_object*, lean_object*, lean_object*, uint32_t, lean_object*); static lean_object* l_Lean_Elab_process___closed__1; lean_object* lean_environment_set_main_module(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_setCommandState___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -101,6 +101,7 @@ LEAN_EXPORT uint8_t l_Lean_Elab_getPrintMessageEndPos(lean_object*); static lean_object* l_Lean_Elab_process___closed__5; LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Elab_Frontend_processCommand___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getParserState___rarg___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Message_toString(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getParserState___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_process(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2558,35 +2559,34 @@ return x_23; } } } -LEAN_EXPORT lean_object* lean_run_frontend(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* lean_run_frontend(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint32_t x_5, lean_object* x_6) { _start: { -lean_object* x_6; lean_object* x_7; -x_6 = l_Lean_Parser_mkInputContext(x_1, x_3); -lean_inc(x_6); -x_7 = l_Lean_Parser_parseHeader(x_6, x_5); -if (lean_obj_tag(x_7) == 0) +lean_object* x_7; lean_object* x_8; +x_7 = l_Lean_Parser_mkInputContext(x_1, x_3); +lean_inc(x_7); +x_8 = l_Lean_Parser_parseHeader(x_7, x_6); +if (lean_obj_tag(x_8) == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint32_t x_14; lean_object* x_15; -x_8 = lean_ctor_get(x_7, 0); -lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 1); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_8, 0); lean_inc(x_9); -x_10 = lean_ctor_get(x_7, 1); +x_10 = lean_ctor_get(x_9, 1); lean_inc(x_10); -lean_dec(x_7); -x_11 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_8, 1); lean_inc(x_11); lean_dec(x_8); x_12 = lean_ctor_get(x_9, 0); lean_inc(x_12); -x_13 = lean_ctor_get(x_9, 1); -lean_inc(x_13); lean_dec(x_9); -x_14 = 0; +x_13 = lean_ctor_get(x_10, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_10, 1); +lean_inc(x_14); +lean_dec(x_10); lean_inc(x_2); -x_15 = l_Lean_Elab_processHeader(x_11, x_2, x_13, x_6, x_14, x_10); -lean_dec(x_11); +x_15 = l_Lean_Elab_processHeader(x_12, x_2, x_14, x_7, x_5, x_11); +lean_dec(x_12); if (lean_obj_tag(x_15) == 0) { lean_object* x_16; lean_object* x_17; uint8_t x_18; @@ -2604,7 +2604,7 @@ x_20 = lean_ctor_get(x_16, 1); x_21 = lean_environment_set_main_module(x_19, x_4); lean_inc(x_2); x_22 = l_Lean_Elab_Command_mkState(x_21, x_20, x_2); -x_23 = l_Lean_Elab_IO_processCommands(x_6, x_12, x_22, x_17); +x_23 = l_Lean_Elab_IO_processCommands(x_7, x_13, x_22, x_17); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; @@ -2752,7 +2752,7 @@ lean_dec(x_16); x_57 = lean_environment_set_main_module(x_55, x_4); lean_inc(x_2); x_58 = l_Lean_Elab_Command_mkState(x_57, x_56, x_2); -x_59 = l_Lean_Elab_IO_processCommands(x_6, x_12, x_58, x_17); +x_59 = l_Lean_Elab_IO_processCommands(x_7, x_13, x_58, x_17); if (lean_obj_tag(x_59) == 0) { lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; @@ -2880,8 +2880,8 @@ return x_86; else { uint8_t x_87; -lean_dec(x_12); -lean_dec(x_6); +lean_dec(x_13); +lean_dec(x_7); lean_dec(x_4); lean_dec(x_2); x_87 = !lean_is_exclusive(x_15); @@ -2907,22 +2907,22 @@ return x_90; else { uint8_t x_91; -lean_dec(x_6); +lean_dec(x_7); lean_dec(x_4); lean_dec(x_2); -x_91 = !lean_is_exclusive(x_7); +x_91 = !lean_is_exclusive(x_8); if (x_91 == 0) { -return x_7; +return x_8; } else { lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_7, 0); -x_93 = lean_ctor_get(x_7, 1); +x_92 = lean_ctor_get(x_8, 0); +x_93 = lean_ctor_get(x_8, 1); lean_inc(x_93); lean_inc(x_92); -lean_dec(x_7); +lean_dec(x_8); x_94 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_94, 0, x_92); lean_ctor_set(x_94, 1, x_93); @@ -2940,6 +2940,16 @@ lean_dec(x_1); return x_5; } } +LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +uint32_t x_7; lean_object* x_8; +x_7 = lean_unbox_uint32(x_5); +lean_dec(x_5); +x_8 = lean_run_frontend(x_1, x_2, x_3, x_4, x_7, x_6); +return x_8; +} +} lean_object* initialize_Init(lean_object*); lean_object* initialize_Lean_Elab_Import(lean_object*); lean_object* initialize_Lean_Elab_Command(lean_object*); diff --git a/stage0/stdlib/Lean/Elab/LetRec.c b/stage0/stdlib/Lean/Elab/LetRec.c index 537878dc35..6de2d7c79f 100644 --- a/stage0/stdlib/Lean/Elab/LetRec.c +++ b/stage0/stdlib/Lean/Elab/LetRec.c @@ -1441,11 +1441,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__16___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -1480,89 +1477,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/MacroRules.c b/stage0/stdlib/Lean/Elab/MacroRules.c index 9a12a84d32..d9264ed2f5 100644 --- a/stage0/stdlib/Lean/Elab/MacroRules.c +++ b/stage0/stdlib/Lean/Elab/MacroRules.c @@ -20,28 +20,33 @@ static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__48; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11; lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__50; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__22; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__18; lean_object* lean_mk_empty_array_with_capacity(lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__15; lean_object* l_Lean_Elab_Command_expandNoKindMacroRulesAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(lean_object*); extern lean_object* l_Lean_nullKind; +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__14; lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__28; lean_object* l_Array_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__30; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__5; -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; extern lean_object* l_Lean_Elab_Command_commandElabAttribute; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__33; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabMacroRules(lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__13; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__3; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__23; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__41; @@ -50,14 +55,14 @@ lean_object* l_Lean_MonadRef_mkInfoFromRefPos___at_Lean_Elab_Command_elabAuxDef_ static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__62; uint8_t lean_name_eq(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__54; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10; lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__45; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__9; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__27; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__40; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__25; lean_object* lean_string_utf8_byte_size(lean_object*); @@ -67,151 +72,111 @@ uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__29; uint8_t l_Lean_Elab_Command_checkRuleKind(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__37; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__53; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__42; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_resolveSyntaxKind(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_SepArray_ofElems(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__55; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__2; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__3; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__56; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__43; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13; lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__32; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__10; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7; static lean_object* l_Lean_Elab_Command_elabMacroRules___closed__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___boxed(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__20; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1; lean_object* l_Lean_Syntax_getId(lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__46; lean_object* l_Lean_Elab_Command_adaptExpander(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_choiceKind; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__16; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__3___closed__3; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5; extern lean_object* l_Lean_instInhabitedSyntax; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__59; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__11; size_t lean_usize_of_nat(lean_object*); lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isNodeOf(lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13; lean_object* l_Lean_Syntax_getQuotContent(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__1(lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__61; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMacroRules___closed__2; lean_object* l_Lean_Syntax_setArg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__49; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__3___closed__4; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2___closed__2; lean_object* l_Lean_Elab_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__31; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__7; lean_object* l_Lean_Syntax_getArgs(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1; lean_object* l_Lean_Syntax_getKind(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__24; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__63; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_inferMacroRulesAltKind___spec__2___rarg(lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__1; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__3___closed__1; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; lean_object* l_Lean_Elab_Command_getMainModule___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__58; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__26; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__4; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__39; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__35; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10; uint8_t l_Lean_Syntax_isNone(lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__38; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__21; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2___closed__4; -extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12; lean_object* lean_mk_syntax_ident(lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRulesAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__19; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__51; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__44; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__60; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMacroRules___closed__1; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__47; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__1; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__5; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__2___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMacroRules___closed__3; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__2; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__12; -lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__17; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__4; static lean_object* l_Lean_Elab_Command_elabMacroRules___lambda__3___closed__2; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__57; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMacroRulesAux___boxed__const__1; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; static lean_object* l_Lean_Elab_Command_elabMacroRulesAux___closed__8; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8; -static lean_object* _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_unsupportedSyntaxExceptionId; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg), 1, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { _start: { uint8_t x_7; @@ -257,14 +222,14 @@ return x_16; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_inc(x_1); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -272,7 +237,7 @@ x_1 = lean_mk_string("|"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2() { _start: { lean_object* x_1; @@ -280,17 +245,17 @@ x_1 = lean_mk_string("null"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -299,7 +264,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5() { _start: { lean_object* x_1; @@ -307,7 +272,7 @@ x_1 = lean_mk_string(","); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6() { _start: { lean_object* x_1; @@ -315,7 +280,7 @@ x_1 = lean_mk_string("=>"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -324,7 +289,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8() { _start: { lean_object* x_1; @@ -332,16 +297,16 @@ x_1 = lean_mk_string("invalid macro_rules alternative, unexpected syntax node ki return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10() { _start: { lean_object* x_1; @@ -349,16 +314,16 @@ x_1 = lean_mk_string("'"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -370,7 +335,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13() { _start: { lean_object* x_1; @@ -378,16 +343,16 @@ x_1 = lean_mk_string("invalid macro_rules alternative, expected syntax node kind return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -412,15 +377,15 @@ lean_dec(x_2); lean_dec(x_1); x_16 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_16, 0, x_12); -x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9; +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9; x_18 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_16); -x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11; +x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11; x_20 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_20, 0, x_18); lean_ctor_set(x_20, 1, x_19); -x_21 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_6, x_20, x_8, x_9, x_10); +x_21 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_6, x_20, x_8, x_9, x_10); return x_21; } else @@ -433,8 +398,8 @@ x_23 = lean_array_get_size(x_22); x_24 = lean_usize_of_nat(x_23); lean_dec(x_23); x_25 = 0; -x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12; -x_27 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(x_5, x_26, x_22, x_24, x_25, x_26); +x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12; +x_27 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(x_5, x_26, x_22, x_24, x_25, x_26); lean_dec(x_22); x_28 = lean_ctor_get(x_27, 0); lean_inc(x_28); @@ -448,15 +413,15 @@ lean_dec(x_2); lean_dec(x_1); x_29 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_29, 0, x_5); -x_30 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14; +x_30 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14; x_31 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_29); -x_32 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11; +x_32 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11; x_33 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_33, 0, x_31); lean_ctor_set(x_33, 1, x_32); -x_34 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_6, x_33, x_8, x_9, x_10); +x_34 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_6, x_33, x_8, x_9, x_10); return x_34; } else @@ -490,27 +455,27 @@ if (x_46 == 0) lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; x_47 = lean_ctor_get(x_45, 0); lean_dec(x_47); -x_48 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1; +x_48 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_41); x_49 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_49, 0, x_41); lean_ctor_set(x_49, 1, x_48); -x_50 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5; +x_50 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5; x_51 = l_Lean_Syntax_SepArray_ofElems(x_50, x_39); lean_dec(x_39); -x_52 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_52 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_53 = l_Array_append___rarg(x_52, x_51); x_54 = lean_box(2); -x_55 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_55 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_56 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_56, 0, x_54); lean_ctor_set(x_56, 1, x_55); lean_ctor_set(x_56, 2, x_53); -x_57 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_57 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; x_58 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_58, 0, x_41); lean_ctor_set(x_58, 1, x_57); -x_59 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7; +x_59 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7; x_60 = lean_array_push(x_59, x_49); x_61 = lean_array_push(x_60, x_56); x_62 = lean_array_push(x_61, x_58); @@ -528,27 +493,27 @@ lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean x_65 = lean_ctor_get(x_45, 1); lean_inc(x_65); lean_dec(x_45); -x_66 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1; +x_66 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_41); x_67 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_67, 0, x_41); lean_ctor_set(x_67, 1, x_66); -x_68 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5; +x_68 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5; x_69 = l_Lean_Syntax_SepArray_ofElems(x_68, x_39); lean_dec(x_39); -x_70 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_70 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_71 = l_Array_append___rarg(x_70, x_69); x_72 = lean_box(2); -x_73 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_73 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_74 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_74, 0, x_72); lean_ctor_set(x_74, 1, x_73); lean_ctor_set(x_74, 2, x_71); -x_75 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_75 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; x_76 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_76, 0, x_41); lean_ctor_set(x_76, 1, x_75); -x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7; +x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7; x_78 = lean_array_push(x_77, x_67); x_79 = lean_array_push(x_78, x_74); x_80 = lean_array_push(x_79, x_76); @@ -584,7 +549,7 @@ return x_84; } } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1() { _start: { lean_object* x_1; @@ -592,17 +557,17 @@ x_1 = lean_mk_string("Lean"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3() { _start: { lean_object* x_1; @@ -610,17 +575,17 @@ x_1 = lean_mk_string("Parser"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5() { _start: { lean_object* x_1; @@ -628,17 +593,17 @@ x_1 = lean_mk_string("Term"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7() { _start: { lean_object* x_1; @@ -646,17 +611,17 @@ x_1 = lean_mk_string("matchAlt"); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -680,7 +645,7 @@ x_11 = lean_array_uget(x_4, x_3); x_12 = lean_unsigned_to_nat(0u); x_13 = lean_array_uset(x_4, x_3, x_12); x_14 = x_11; -x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8; +x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8; lean_inc(x_14); x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); if (x_16 == 0) @@ -691,7 +656,7 @@ lean_dec(x_13); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_7); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_7); x_18 = !lean_is_exclusive(x_17); if (x_18 == 0) { @@ -761,7 +726,7 @@ x_35 = lean_box(0); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2(x_28, x_26, x_25, x_15, x_1, x_14, x_35, x_5, x_6, x_7); +x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2(x_28, x_26, x_25, x_15, x_1, x_14, x_35, x_5, x_6, x_7); if (lean_obj_tag(x_36) == 0) { lean_object* x_37; lean_object* x_38; size_t x_39; size_t x_40; lean_object* x_41; lean_object* x_42; @@ -822,7 +787,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -876,7 +841,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -902,7 +867,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__10; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -920,7 +885,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__12; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1073,7 +1038,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__25; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1123,7 +1088,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__34() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__33; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1141,7 +1106,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__36() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__35; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1159,7 +1124,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__38() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__37; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1185,7 +1150,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__41() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__40; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -1388,7 +1353,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__61() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_2 = l_Array_append___rarg(x_1, x_1); return x_2; } @@ -1398,7 +1363,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_3 = l_Lean_Elab_Command_elabMacroRulesAux___closed__61; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); @@ -1437,7 +1402,7 @@ x_10 = x_4; x_11 = lean_box_usize(x_9); x_12 = l_Lean_Elab_Command_elabMacroRulesAux___boxed__const__1; lean_inc(x_3); -x_13 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___boxed), 7, 4); +x_13 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___boxed), 7, 4); lean_closure_set(x_13, 0, x_3); lean_closure_set(x_13, 1, x_11); lean_closure_set(x_13, 2, x_12); @@ -1504,7 +1469,7 @@ lean_ctor_set(x_41, 1, x_40); lean_ctor_set(x_41, 2, x_39); x_42 = l_Lean_Elab_Command_elabMacroRulesAux___closed__17; x_43 = lean_array_push(x_42, x_41); -x_44 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_44 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_45 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_45, 0, x_35); lean_ctor_set(x_45, 1, x_44); @@ -1578,9 +1543,9 @@ lean_inc(x_19); x_76 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_76, 0, x_19); lean_ctor_set(x_76, 1, x_75); -x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_77 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_78 = l_Array_append___rarg(x_77, x_16); -x_79 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1; +x_79 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_19); x_80 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_80, 0, x_19); @@ -1601,7 +1566,7 @@ x_87 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_87, 0, x_35); lean_ctor_set(x_87, 1, x_44); lean_ctor_set(x_87, 2, x_86); -x_88 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_88 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_19); x_89 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_89, 0, x_19); @@ -1639,12 +1604,12 @@ x_105 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_105, 0, x_35); lean_ctor_set(x_105, 1, x_104); lean_ctor_set(x_105, 2, x_103); -x_106 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7; +x_106 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7; x_107 = lean_array_push(x_106, x_80); x_108 = lean_array_push(x_107, x_87); x_109 = lean_array_push(x_108, x_89); x_110 = lean_array_push(x_109, x_105); -x_111 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8; +x_111 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8; x_112 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_112, 0, x_35); lean_ctor_set(x_112, 1, x_111); @@ -1754,7 +1719,7 @@ lean_ctor_set(x_163, 1, x_162); lean_ctor_set(x_163, 2, x_161); x_164 = l_Lean_Elab_Command_elabMacroRulesAux___closed__17; x_165 = lean_array_push(x_164, x_163); -x_166 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_166 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_167 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_167, 0, x_157); lean_ctor_set(x_167, 1, x_166); @@ -1828,9 +1793,9 @@ lean_inc(x_19); x_198 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_198, 0, x_19); lean_ctor_set(x_198, 1, x_197); -x_199 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_199 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_200 = l_Array_append___rarg(x_199, x_16); -x_201 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1; +x_201 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1; lean_inc(x_19); x_202 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_202, 0, x_19); @@ -1851,7 +1816,7 @@ x_209 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_209, 0, x_157); lean_ctor_set(x_209, 1, x_166); lean_ctor_set(x_209, 2, x_208); -x_210 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_210 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; lean_inc(x_19); x_211 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_211, 0, x_19); @@ -1889,12 +1854,12 @@ x_227 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_227, 0, x_157); lean_ctor_set(x_227, 1, x_226); lean_ctor_set(x_227, 2, x_225); -x_228 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7; +x_228 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7; x_229 = lean_array_push(x_228, x_202); x_230 = lean_array_push(x_229, x_209); x_231 = lean_array_push(x_230, x_211); x_232 = lean_array_push(x_231, x_227); -x_233 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8; +x_233 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8; x_234 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_234, 0, x_157); lean_ctor_set(x_234, 1, x_233); @@ -2000,17 +1965,7 @@ return x_274; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -2018,7 +1973,7 @@ x_7 = lean_unbox_usize(x_4); lean_dec(x_4); x_8 = lean_unbox_usize(x_5); lean_dec(x_5); -x_9 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(x_1, x_2, x_3, x_7, x_8, x_6); +x_9 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMacroRulesAux___spec__1(x_1, x_2, x_3, x_7, x_8, x_6); lean_dec(x_6); lean_dec(x_3); lean_dec(x_2); @@ -2026,26 +1981,26 @@ lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__1(x_1, x_2); +x_3 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__1(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_7); return x_11; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { size_t x_8; size_t x_9; lean_object* x_10; @@ -2053,7 +2008,7 @@ x_8 = lean_unbox_usize(x_2); lean_dec(x_2); x_9 = lean_unbox_usize(x_3); lean_dec(x_3); -x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3(x_1, x_8, x_9, x_4, x_5, x_6, x_7); +x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2(x_1, x_8, x_9, x_4, x_5, x_6, x_7); return x_10; } } @@ -2128,10 +2083,10 @@ lean_inc(x_11); x_19 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_19, 0, x_11); lean_ctor_set(x_19, 1, x_18); -x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_21 = l_Array_append___rarg(x_20, x_6); x_22 = lean_box(2); -x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_24 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_24, 0, x_22); lean_ctor_set(x_24, 1, x_23); @@ -2318,7 +2273,7 @@ _start: lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; x_10 = lean_unsigned_to_nat(1u); x_11 = l_Lean_Syntax_getArg(x_1, x_10); -x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5; +x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5; lean_inc(x_2); x_13 = lean_name_mk_string(x_2, x_12); x_14 = l_Lean_Elab_Command_elabMacroRules___lambda__2___closed__1; @@ -2338,7 +2293,7 @@ lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_9); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_9); return x_17; } else @@ -2368,7 +2323,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); lean_dec(x_2); -x_25 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_9); +x_25 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_9); return x_25; } else @@ -2396,7 +2351,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); lean_dec(x_2); -x_32 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_9); +x_32 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_9); return x_32; } else @@ -2462,7 +2417,7 @@ else { lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; x_45 = l_Lean_Syntax_getArg(x_33, x_21); -x_46 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7; +x_46 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7; lean_inc(x_13); x_47 = lean_name_mk_string(x_13, x_46); lean_inc(x_45); @@ -2712,7 +2667,7 @@ lean_ctor_set(x_118, 1, x_105); lean_ctor_set(x_118, 2, x_117); x_119 = l_Lean_Elab_Command_elabMacroRulesAux___closed__17; x_120 = lean_array_push(x_119, x_118); -x_121 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_121 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_122 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_122, 0, x_114); lean_ctor_set(x_122, 1, x_121); @@ -2798,7 +2753,7 @@ x_159 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_159, 0, x_114); lean_ctor_set(x_159, 1, x_121); lean_ctor_set(x_159, 2, x_158); -x_160 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_160 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; x_161 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_161, 0, x_86); lean_ctor_set(x_161, 1, x_160); @@ -2840,7 +2795,7 @@ x_178 = lean_ctor_get(x_6, 0); lean_inc(x_178); lean_dec(x_6); x_179 = lean_array_push(x_119, x_178); -x_180 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_180 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_181 = l_Array_append___rarg(x_180, x_179); x_182 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_182, 0, x_114); @@ -2914,7 +2869,7 @@ lean_ctor_set(x_219, 1, x_206); lean_ctor_set(x_219, 2, x_218); x_220 = l_Lean_Elab_Command_elabMacroRulesAux___closed__17; x_221 = lean_array_push(x_220, x_219); -x_222 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3; +x_222 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3; x_223 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_223, 0, x_215); lean_ctor_set(x_223, 1, x_222); @@ -3000,7 +2955,7 @@ x_260 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_260, 0, x_215); lean_ctor_set(x_260, 1, x_222); lean_ctor_set(x_260, 2, x_259); -x_261 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6; +x_261 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6; x_262 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_262, 0, x_86); lean_ctor_set(x_262, 1, x_261); @@ -3044,7 +2999,7 @@ x_280 = lean_ctor_get(x_6, 0); lean_inc(x_280); lean_dec(x_6); x_281 = lean_array_push(x_220, x_280); -x_282 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4; +x_282 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4; x_283 = l_Array_append___rarg(x_282, x_281); x_284 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_284, 0, x_215); @@ -3098,7 +3053,7 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); -x_301 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_9); +x_301 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_9); return x_301; } else @@ -3115,6 +3070,7 @@ lean_closure_set(x_304, 2, x_4); lean_closure_set(x_304, 3, x_6); x_305 = l_Lean_Elab_Command_elabMacroRules___lambda__1___closed__1; x_306 = l_Lean_Elab_Command_expandNoKindMacroRulesAux(x_303, x_305, x_304, x_7, x_8, x_9); +lean_dec(x_303); return x_306; } } @@ -3125,7 +3081,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabMacroRules___lambda__3___close _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; x_2 = l_Lean_Elab_Command_elabMacroRulesAux___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -3172,7 +3128,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_7; } else @@ -3195,7 +3151,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_14 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_4); +x_14 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_14; } else @@ -3213,7 +3169,7 @@ lean_dec(x_15); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_18 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg(x_4); +x_18 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___rarg(x_4); return x_18; } else @@ -3221,8 +3177,8 @@ else lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_19 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_19, 0, x_15); -x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; -x_21 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; +x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; +x_21 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; x_22 = lean_box(0); x_23 = l_Lean_Elab_Command_elabMacroRules___lambda__2(x_1, x_20, x_21, x_5, x_22, x_19, x_2, x_3, x_4); lean_dec(x_1); @@ -3235,8 +3191,8 @@ else lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_9); x_24 = lean_box(0); -x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4; -x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2; +x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4; +x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2; x_27 = lean_box(0); x_28 = l_Lean_Elab_Command_elabMacroRules___lambda__2(x_1, x_25, x_26, x_5, x_27, x_24, x_2, x_3, x_4); lean_dec(x_1); @@ -3337,52 +3293,50 @@ lean_dec_ref(res); res = initialize_Lean_Elab_AuxDef(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1(); -lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabMacroRulesAux___spec__1___rarg___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__2); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__3); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__4); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__5); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__6); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__7); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__8); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__9); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__10); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__11); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__12); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__13); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___lambda__2___closed__14); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__2); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__3); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__4); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__5); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__6); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__7); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__3___closed__8); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__3); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__4); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__5); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__6); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__7); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__8); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__9); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__10); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__11); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__12); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__13); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___lambda__2___closed__14); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__3); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__4); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__5); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__6); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__7); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMacroRulesAux___spec__2___closed__8); l_Lean_Elab_Command_elabMacroRulesAux___closed__1 = _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabMacroRulesAux___closed__1); l_Lean_Elab_Command_elabMacroRulesAux___closed__2 = _init_l_Lean_Elab_Command_elabMacroRulesAux___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Match.c b/stage0/stdlib/Lean/Elab/Match.c index c293dbea60..6859c94fe1 100644 --- a/stage0/stdlib/Lean/Elab/Match.c +++ b/stage0/stdlib/Lean/Elab/Match.c @@ -25882,11 +25882,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Match_0__Lean_Elab_Term_elabMatchAux___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -25921,89 +25918,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/MutualDef.c b/stage0/stdlib/Lean/Elab/MutualDef.c index 4409297482..759bfe6d39 100644 --- a/stage0/stdlib/Lean/Elab/MutualDef.c +++ b/stage0/stdlib/Lean/Elab/MutualDef.c @@ -251,6 +251,7 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClos static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereDeclsAsStructInst___spec__2___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclId___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__2; static lean_object* l_Lean_Elab_mkDeclName___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__2___lambda__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getFunName___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -484,6 +485,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_main___boxed__const__1; uint8_t l_Lean_Elab_DefKind_isTheorem(uint8_t); static lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isMultiConstant_x3f___spec__3___closed__6; static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__6; +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MetavarContext_getDelayedRoot(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_getMax_x3f___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pickMaxFVar_x3f___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Elab_expandDeclIdCore(lean_object*); @@ -528,7 +530,6 @@ extern lean_object* l_Lean_Expr_FindImpl_initCache; uint8_t l_List_elem___at_Lean_NameHashSet_insert___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); -lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_assignExprMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereDeclsAsStructInst___spec__2___closed__3; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereDeclsAsStructInst___closed__5; @@ -540,7 +541,6 @@ lean_object* l_List_redLength___rarg(lean_object*); lean_object* l_Std_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* l_Lean_Meta_getMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_append_after(lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_index(lean_object*); @@ -25045,11 +25045,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_processDefDeriving___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -25084,89 +25081,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -29179,7 +29218,7 @@ x_13 = lean_alloc_closure((void*)(l_Lean_expandMacros), 3, 1); lean_closure_set(x_13, 0, x_12); lean_inc(x_3); lean_inc(x_2); -x_14 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_MkInstanceName_main___spec__1(x_13, x_2, x_3, x_10); +x_14 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__10(x_13, x_2, x_3, x_10); if (lean_obj_tag(x_14) == 0) { lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; @@ -29213,7 +29252,7 @@ lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_dec(x_17); lean_dec(x_9); x_25 = l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__6; -x_26 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__6(x_15, x_25, x_2, x_3, x_16); +x_26 = l_Lean_throwErrorAt___at_Lean_Elab_Command_MkInstanceName_main___spec__2(x_15, x_25, x_2, x_3, x_16); x_27 = !lean_is_exclusive(x_26); if (x_27 == 0) { diff --git a/stage0/stdlib/Lean/Elab/Notation.c b/stage0/stdlib/Lean/Elab/Notation.c index 6275f1ff8a..0cd1965408 100644 --- a/stage0/stdlib/Lean/Elab/Notation.c +++ b/stage0/stdlib/Lean/Elab/Notation.c @@ -753,7 +753,6 @@ lean_dec(x_3); x_9 = lean_array_fget(x_1, x_8); lean_inc(x_2); x_10 = l_Lean_Syntax_structEq(x_2, x_9); -lean_dec(x_9); if (x_10 == 0) { x_3 = x_8; diff --git a/stage0/stdlib/Lean/Elab/PatternVar.c b/stage0/stdlib/Lean/Elab/PatternVar.c index af8aa49c9c..4ac304725c 100644 --- a/stage0/stdlib/Lean/Elab/PatternVar.c +++ b/stage0/stdlib/Lean/Elab/PatternVar.c @@ -9540,11 +9540,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_getPatternVars___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -9579,89 +9576,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Main.c b/stage0/stdlib/Lean/Elab/PreDefinition/Main.c index 695fad9720..30598e61d5 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/Main.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Main.c @@ -3832,11 +3832,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_addPreDefinitions___spec__5___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -3871,89 +3868,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/Quotation.c b/stage0/stdlib/Lean/Elab/Quotation.c index 772a25d64c..b069b39c8c 100644 --- a/stage0/stdlib/Lean/Elab/Quotation.c +++ b/stage0/stdlib/Lean/Elab/Quotation.c @@ -988,7 +988,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quota static lean_object* l_Lean_Elab_Term_Quotation___aux__Lean__Elab__Quotation______macroRules__Lean__Elab__Term__Quotation__commandElab__stx__quot______1___closed__1; static lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__11___closed__15; static lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_compileStxMatch___lambda__3___closed__9; -LEAN_EXPORT lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_Quotation___aux__Lean__Elab__Quotation______macroRules__Lean__Elab__Term__Quotation__commandElab__stx__quot______1___closed__44; LEAN_EXPORT lean_object* l_List_mapM___at___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___spec__6___boxed(lean_object**); static lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__6___closed__1; @@ -16701,11 +16700,16 @@ case 1: lean_object* x_6; lean_object* x_7; uint8_t x_8; lean_dec(x_4); x_6 = lean_ctor_get(x_5, 0); +lean_inc(x_6); x_7 = lean_ctor_get(x_5, 1); +lean_inc(x_7); +lean_dec(x_5); x_8 = lean_name_eq(x_6, x_1); +lean_dec(x_6); if (x_8 == 0) { lean_object* x_9; +lean_dec(x_7); lean_dec(x_2); x_9 = lean_box(1); return x_9; @@ -16718,6 +16722,7 @@ x_11 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_11, 0, x_10); x_12 = l___private_Init_Data_Option_Basic_0__beqOption____x40_Init_Data_Option_Basic___hyg_734____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_314____spec__1(x_7, x_11); lean_dec(x_11); +lean_dec(x_7); if (x_12 == 0) { lean_object* x_13; @@ -16744,6 +16749,7 @@ lean_dec(x_2); if (x_3 == 0) { lean_object* x_17; +lean_dec(x_5); lean_dec(x_4); x_17 = lean_box(1); return x_17; @@ -16752,6 +16758,8 @@ else { lean_object* x_18; uint8_t x_19; x_18 = lean_ctor_get(x_5, 0); +lean_inc(x_18); +lean_dec(x_5); x_19 = l_Lean_Syntax_structEq(x_4, x_18); if (x_19 == 0) { @@ -16770,6 +16778,7 @@ return x_21; default: { lean_object* x_22; +lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); x_22 = lean_box(1); @@ -18970,6 +18979,7 @@ else { lean_object* x_7; lean_dec(x_2); +lean_dec(x_1); x_7 = lean_box(2); return x_7; } @@ -24947,7 +24957,7 @@ lean_dec(x_73); lean_inc(x_12); x_124 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_124, 0, x_12); -x_125 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14___boxed), 2, 1); +x_125 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14), 2, 1); lean_closure_set(x_125, 0, x_12); x_126 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__22), 10, 1); lean_closure_set(x_126, 0, x_120); @@ -25599,7 +25609,7 @@ lean_dec(x_242); lean_inc(x_190); x_293 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_293, 0, x_190); -x_294 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14___boxed), 2, 1); +x_294 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14), 2, 1); lean_closure_set(x_294, 0, x_190); x_295 = lean_alloc_closure((void*)(l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__22), 10, 1); lean_closure_set(x_295, 0, x_289); @@ -26171,7 +26181,6 @@ uint8_t x_6; lean_object* x_7; x_6 = lean_unbox(x_3); lean_dec(x_3); x_7 = l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__9(x_1, x_2, x_6, x_4, x_5); -lean_dec(x_5); lean_dec(x_1); return x_7; } @@ -26207,15 +26216,6 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__14(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} LEAN_EXPORT lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__15___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; diff --git a/stage0/stdlib/Lean/Elab/Quotation/Precheck.c b/stage0/stdlib/Lean/Elab/Quotation/Precheck.c index fc9a0f40bb..637c0613d9 100644 --- a/stage0/stdlib/Lean/Elab/Quotation/Precheck.c +++ b/stage0/stdlib/Lean/Elab/Quotation/Precheck.c @@ -1723,11 +1723,8 @@ return x_8; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_Quotation_precheck___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -1762,89 +1759,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/StructInst.c b/stage0/stdlib/Lean/Elab/StructInst.c index ec8978cc54..b09ef2a65c 100644 --- a/stage0/stdlib/Lean/Elab/StructInst.c +++ b/stage0/stdlib/Lean/Elab/StructInst.c @@ -120,7 +120,7 @@ LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Elab_StructInst_0__ static lean_object* l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructName___rarg___closed__5; lean_object* l_Lean_addTrace_addTraceOptions(lean_object*); static lean_object* l_Lean_Elab_Term_StructInst_DefaultFields_mkDefaultValueAux_x3f___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9242_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9246_(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_StructInst_expandStructInstExpectedType___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_DefaultFields_mkDefaultValueAux_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Meta_0__Lean_Syntax_isNatLitAux(lean_object*, lean_object*); @@ -553,6 +553,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_DefaultFields_getFieldName( LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_Struct_ref___boxed(lean_object*); static lean_object* l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_expandNonAtomicExplicitSources_go___lambda__1___closed__4; static lean_object* l_Lean_Elab_Term_StructInst_DefaultFields_findDefaultMissing_x3f___lambda__1___closed__1; +lean_object* l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_AssocList_find_x3f___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_mkFieldMap___spec__3___boxed(lean_object*, lean_object*); static lean_object* l_List_foldlM___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStruct___spec__3___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_StructInst_formatStruct___spec__2(size_t, size_t, lean_object*); @@ -22404,11 +22405,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -22443,89 +22441,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -22862,105 +22902,109 @@ return x_2; LEAN_EXPORT lean_object* l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_12; +lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_dec(x_4); +x_12 = lean_alloc_closure((void*)(l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStruct), 9, 2); +lean_closure_set(x_12, 0, x_1); +lean_closure_set(x_12, 1, x_2); +x_13 = 1; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -x_12 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStruct(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_12) == 0) +x_14 = l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(x_12, x_13, x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_ctor_get(x_13, 0); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); -x_16 = lean_ctor_get(x_13, 1); +x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); -lean_dec(x_13); -x_31 = lean_st_ref_get(x_10, x_14); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_32, 3); -lean_inc(x_33); -lean_dec(x_32); -x_34 = lean_ctor_get_uint8(x_33, sizeof(void*)*1); -lean_dec(x_33); -if (x_34 == 0) -{ -lean_object* x_35; uint8_t x_36; -x_35 = lean_ctor_get(x_31, 1); +lean_dec(x_14); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_15, 1); +lean_inc(x_18); +lean_dec(x_15); +x_33 = lean_st_ref_get(x_10, x_16); +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_34, 3); lean_inc(x_35); -lean_dec(x_31); -x_36 = 0; -x_17 = x_36; -x_18 = x_35; -goto block_30; -} -else +lean_dec(x_34); +x_36 = lean_ctor_get_uint8(x_35, sizeof(void*)*1); +lean_dec(x_35); +if (x_36 == 0) { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_37 = lean_ctor_get(x_31, 1); +lean_object* x_37; uint8_t x_38; +x_37 = lean_ctor_get(x_33, 1); lean_inc(x_37); -lean_dec(x_31); -lean_inc(x_3); -x_38 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__2(x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_37); -x_39 = lean_ctor_get(x_38, 0); +lean_dec(x_33); +x_38 = 0; +x_19 = x_38; +x_20 = x_37; +goto block_32; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_39 = lean_ctor_get(x_33, 1); lean_inc(x_39); -x_40 = lean_ctor_get(x_38, 1); -lean_inc(x_40); -lean_dec(x_38); -x_41 = lean_unbox(x_39); -lean_dec(x_39); -x_17 = x_41; -x_18 = x_40; -goto block_30; +lean_dec(x_33); +lean_inc(x_3); +x_40 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__2(x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_39); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = lean_unbox(x_41); +lean_dec(x_41); +x_19 = x_43; +x_20 = x_42; +goto block_32; } -block_30: +block_32: { -if (x_17 == 0) +if (x_19 == 0) { -lean_object* x_19; lean_object* x_20; +lean_object* x_21; lean_object* x_22; lean_dec(x_3); -x_19 = lean_box(0); -x_20 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__1(x_16, x_15, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -return x_20; +x_21 = lean_box(0); +x_22 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__1(x_18, x_17, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_20); +return x_22; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_15); -x_21 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_21, 0, x_15); -x_22 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__2___closed__2; -x_23 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_21); -x_24 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabModifyOp___lambda__2___closed__17; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_inc(x_17); +x_23 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_23, 0, x_17); +x_24 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__2___closed__2; x_25 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_addTrace___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__1(x_3, x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__1(x_16, x_15, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_28); -lean_dec(x_27); -return x_29; +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +x_26 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabModifyOp___lambda__2___closed__17; +x_27 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +x_28 = l_Lean_addTrace___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__1(x_3, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_20); +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_elabStructInstAux___lambda__1(x_18, x_17, x_29, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +lean_dec(x_29); +return x_31; } } } else { -uint8_t x_42; +uint8_t x_44; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -22968,23 +23012,23 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); -x_42 = !lean_is_exclusive(x_12); -if (x_42 == 0) +x_44 = !lean_is_exclusive(x_14); +if (x_44 == 0) { -return x_12; +return x_14; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_12, 0); -x_44 = lean_ctor_get(x_12, 1); -lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_12); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_44); -return x_45; +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_14, 0); +x_46 = lean_ctor_get(x_14, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_14); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; } } } @@ -23552,7 +23596,7 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9242_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9246_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; @@ -24132,7 +24176,7 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Term_StructInst_elabStructInst___c res = l___regBuiltin_Lean_Elab_Term_StructInst_elabStructInst(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -res = l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9242_(lean_io_mk_world()); +res = l_Lean_Elab_Term_StructInst_initFn____x40_Lean_Elab_StructInst___hyg_9246_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/Structure.c b/stage0/stdlib/Lean/Elab/Structure.c index 8d811f6db6..ea06c0a991 100644 --- a/stage0/stdlib/Lean/Elab/Structure.c +++ b/stage0/stdlib/Lean/Elab/Structure.c @@ -22,7 +22,6 @@ static lean_object* l_Lean_Elab_Command_elabStructure___closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabStructure___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_findExistingField_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabStructureView___spec__4___closed__3; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkToParentName(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_mkCompositeField___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_getResultUniverse___closed__1; @@ -48,7 +47,6 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__5___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_checkResultingUniverse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkSort(lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_removeUnused___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getOptDerivingClasses___at_Lean_Elab_Command_elabStructure___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_RBNode_insert___at_Lean_NameSet_insert___spec__1(lean_object*, lean_object*, lean_object*); @@ -179,6 +177,7 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabStr static lean_object* l_Lean_Elab_elabModifiers___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__1___lambda__3___closed__5; lean_object* l_Lean_Elab_expandDeclId___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_shouldInferResultUniverse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_StructFieldKind_noConfusion___rarg(uint8_t, uint8_t, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent___closed__1; lean_object* l_Lean_Expr_appArg_x21(lean_object*); @@ -243,7 +242,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at___private_Lean_Elab_Stru LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_processOveriddenDefaultValues___boxed__const__1; lean_object* l_Lean_LocalContext_setBinderInfo(lean_object*, lean_object*, uint8_t); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_copyFields_copy___rarg___lambda__3___closed__2; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_checkValidFieldModifier___lambda__3___closed__2; @@ -255,7 +253,6 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNew LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_getOptDerivingClasses___at_Lean_Elab_Command_elabStructure___spec__2___closed__3; -LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240____boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__12; LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabModifiers___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__1___closed__1; @@ -388,6 +385,7 @@ LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_addDefaults___closed__1; static lean_object* l_panic___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_copyFields_copy___spec__1___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1; static lean_object* l_Lean_Elab_Command_checkValidInductiveModifier___at_Lean_Elab_Command_elabStructure___spec__1___lambda__1___closed__4; static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addDefaults___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -395,6 +393,7 @@ lean_object* l_Lean_Syntax_getId(lean_object*); lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabStructureView___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withParents_go___rarg___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2; static uint8_t l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___closed__2; lean_object* l_Lean_mkRecOn___at___private_Lean_Elab_Inductive_0__Lean_Elab_Command_mkAuxConstructions___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -459,7 +458,7 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabStr lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_reverse___rarg(lean_object*); lean_object* l_Lean_Meta_assignLevelMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkNoConfusion(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__8___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getLocalInstances(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -544,6 +543,7 @@ static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_ lean_object* l_Lean_Name_getString_x21(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_collectLevelParamsInStructure___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4; lean_object* l_List_redLength___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_collectUsed___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_checkValidInductiveModifier___at_Lean_Elab_Command_elabStructure___spec__1___closed__2; @@ -605,7 +605,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_StructFieldKind_noConfusion(lean_ob LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_levelMVarToParamAux___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__14___lambda__2___closed__2; static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent_copyFields___spec__1___closed__3; -LEAN_EXPORT uint8_t l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(uint8_t, uint8_t); +LEAN_EXPORT uint8_t l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(uint8_t, uint8_t); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_collectLevelParamsInFVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_containsFieldName___boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___closed__2; @@ -683,6 +683,7 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(lean_o static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_defaultCtorName___closed__2; lean_object* l_Lean_Elab_Modifiers_addAttribute(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_collectUniversesFromFields___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3; lean_object* lean_set_reducibility_status(lean_object*, lean_object*, uint8_t); lean_object* lean_panic_fn(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent_copyFields___spec__1___lambda__2___closed__2; @@ -695,8 +696,8 @@ static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_ LEAN_EXPORT lean_object* l_Lean_Elab_getOptDerivingClasses___at_Lean_Elab_Command_elabStructure___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__5___lambda__6___closed__6; -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10178_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10191_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260_(lean_object*); lean_object* l_Lean_Meta_instantiateMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_TagDeclarationExtension_isTagged(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); @@ -732,7 +733,6 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_updateR LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabStructureView___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__14___lambda__3___closed__2; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4; lean_object* l_Lean_Elab_toAttributeKind___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_StructFieldKind_noConfusion___rarg___closed__1; static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkAuxConstructions___closed__1; @@ -973,7 +973,7 @@ x_1 = 0; return x_1; } } -LEAN_EXPORT uint8_t l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(uint8_t x_1, uint8_t x_2) { +LEAN_EXPORT uint8_t l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(uint8_t x_1, uint8_t x_2) { _start: { lean_object* x_3; lean_object* x_4; uint8_t x_5; @@ -985,7 +985,7 @@ lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; @@ -993,7 +993,7 @@ x_3 = lean_unbox(x_1); lean_dec(x_1); x_4 = lean_unbox(x_2); lean_dec(x_2); -x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(x_3, x_4); +x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(x_3, x_4); x_6 = lean_box(x_5); return x_6; } @@ -1002,7 +1002,7 @@ static lean_object* _init_l_Lean_Elab_Command_instBEqStructFieldKind___closed__1 _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248____boxed), 2, 0); return x_1; } } @@ -1311,11 +1311,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__5___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -1350,89 +1347,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -4606,90 +4645,93 @@ lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { _start: { -lean_object* x_19; uint8_t x_20; lean_object* x_21; +lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_inc(x_2); -x_19 = l_Lean_Name_append(x_1, x_2); -x_20 = lean_ctor_get_uint8(x_3, sizeof(void*)*2); +x_20 = l_Lean_Name_append(x_1, x_2); +x_21 = lean_ctor_get_uint8(x_3, sizeof(void*)*2); +lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); -lean_inc(x_12); -x_21 = l_Lean_Elab_applyVisibility___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5(x_20, x_19, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -if (lean_obj_tag(x_21) == 0) +x_22 = l_Lean_Elab_applyVisibility___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5(x_21, x_20, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +if (lean_obj_tag(x_22) == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_21, 1); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_23 = lean_ctor_get(x_22, 0); lean_inc(x_23); -lean_dec(x_21); -x_24 = lean_ctor_get(x_3, 0); +x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); -lean_inc(x_22); -x_25 = l_Lean_addDocString_x27___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8(x_22, x_24, x_12, x_13, x_14, x_15, x_16, x_17, x_23); +lean_dec(x_22); +x_25 = lean_ctor_get(x_3, 0); +lean_inc(x_25); +lean_inc(x_23); +x_26 = l_Lean_addDocString_x27___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8(x_23, x_25, x_13, x_14, x_15, x_16, x_17, x_18, x_24); +lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); -lean_dec(x_12); -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_25, 0); -lean_dec(x_27); -x_28 = lean_alloc_ctor(0, 7, 2); -lean_ctor_set(x_28, 0, x_4); -lean_ctor_set(x_28, 1, x_3); -lean_ctor_set(x_28, 2, x_22); -lean_ctor_set(x_28, 3, x_2); -lean_ctor_set(x_28, 4, x_7); -lean_ctor_set(x_28, 5, x_8); -lean_ctor_set(x_28, 6, x_9); -lean_ctor_set_uint8(x_28, sizeof(void*)*7, x_5); -lean_ctor_set_uint8(x_28, sizeof(void*)*7 + 1, x_6); -x_29 = lean_array_push(x_10, x_28); -lean_ctor_set(x_25, 0, x_29); -return x_25; +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_26, 0); +lean_dec(x_28); +x_29 = lean_alloc_ctor(0, 8, 2); +lean_ctor_set(x_29, 0, x_4); +lean_ctor_set(x_29, 1, x_3); +lean_ctor_set(x_29, 2, x_23); +lean_ctor_set(x_29, 3, x_2); +lean_ctor_set(x_29, 4, x_7); +lean_ctor_set(x_29, 5, x_8); +lean_ctor_set(x_29, 6, x_9); +lean_ctor_set(x_29, 7, x_10); +lean_ctor_set_uint8(x_29, sizeof(void*)*8, x_5); +lean_ctor_set_uint8(x_29, sizeof(void*)*8 + 1, x_6); +x_30 = lean_array_push(x_11, x_29); +lean_ctor_set(x_26, 0, x_30); +return x_26; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_30 = lean_ctor_get(x_25, 1); -lean_inc(x_30); -lean_dec(x_25); -x_31 = lean_alloc_ctor(0, 7, 2); -lean_ctor_set(x_31, 0, x_4); -lean_ctor_set(x_31, 1, x_3); -lean_ctor_set(x_31, 2, x_22); -lean_ctor_set(x_31, 3, x_2); -lean_ctor_set(x_31, 4, x_7); -lean_ctor_set(x_31, 5, x_8); -lean_ctor_set(x_31, 6, x_9); -lean_ctor_set_uint8(x_31, sizeof(void*)*7, x_5); -lean_ctor_set_uint8(x_31, sizeof(void*)*7 + 1, x_6); -x_32 = lean_array_push(x_10, x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_30); -return x_33; +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_26, 1); +lean_inc(x_31); +lean_dec(x_26); +x_32 = lean_alloc_ctor(0, 8, 2); +lean_ctor_set(x_32, 0, x_4); +lean_ctor_set(x_32, 1, x_3); +lean_ctor_set(x_32, 2, x_23); +lean_ctor_set(x_32, 3, x_2); +lean_ctor_set(x_32, 4, x_7); +lean_ctor_set(x_32, 5, x_8); +lean_ctor_set(x_32, 6, x_9); +lean_ctor_set(x_32, 7, x_10); +lean_ctor_set_uint8(x_32, sizeof(void*)*8, x_5); +lean_ctor_set_uint8(x_32, sizeof(void*)*8 + 1, x_6); +x_33 = lean_array_push(x_11, x_32); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_31); +return x_34; } } else { -uint8_t x_34; +uint8_t x_35; +lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); -lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -4697,23 +4739,23 @@ lean_dec(x_7); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_34 = !lean_is_exclusive(x_21); -if (x_34 == 0) +x_35 = !lean_is_exclusive(x_22); +if (x_35 == 0) { -return x_21; +return x_22; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_21, 0); -x_36 = lean_ctor_get(x_21, 1); +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_22, 0); +x_37 = lean_ctor_get(x_22, 1); +lean_inc(x_37); lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_21); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_dec(x_22); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; } } } @@ -4762,6 +4804,7 @@ if (x_19 == 0) lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; x_20 = lean_array_uget(x_8, x_9); x_21 = l_Lean_Syntax_getId(x_20); +lean_inc(x_21); x_22 = lean_erase_macro_scopes(x_21); x_23 = l_Lean_Name_isAtomic(x_22); x_24 = lean_ctor_get(x_16, 0); @@ -4792,6 +4835,7 @@ lean_ctor_set(x_33, 7, x_31); if (x_23 == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; +lean_dec(x_21); lean_dec(x_11); lean_dec(x_7); lean_dec(x_6); @@ -4846,7 +4890,7 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_3); -x_46 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(x_1, x_22, x_3, x_20, x_2, x_4, x_5, x_6, x_7, x_11, x_45, x_12, x_13, x_14, x_15, x_33, x_17, x_18); +x_46 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(x_1, x_22, x_3, x_20, x_2, x_4, x_21, x_5, x_6, x_7, x_11, x_45, x_12, x_13, x_14, x_15, x_33, x_17, x_18); if (lean_obj_tag(x_46) == 0) { lean_object* x_47; lean_object* x_48; size_t x_49; size_t x_50; @@ -7194,17 +7238,18 @@ lean_object* x_15 = _args[14]; lean_object* x_16 = _args[15]; lean_object* x_17 = _args[16]; lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; _start: { -uint8_t x_19; uint8_t x_20; lean_object* x_21; -x_19 = lean_unbox(x_5); +uint8_t x_20; uint8_t x_21; lean_object* x_22; +x_20 = lean_unbox(x_5); lean_dec(x_5); -x_20 = lean_unbox(x_6); +x_21 = lean_unbox(x_6); lean_dec(x_6); -x_21 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_19, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -lean_dec(x_11); +x_22 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_20, x_21, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +lean_dec(x_12); lean_dec(x_1); -return x_21; +return x_22; } } LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___boxed(lean_object** _args) { @@ -7679,7 +7724,7 @@ lean_dec(x_2); return x_4; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1() { _start: { lean_object* x_1; @@ -7687,17 +7732,17 @@ x_1 = lean_mk_string("structureDiamondWarning"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3() { _start: { lean_object* x_1; @@ -7705,13 +7750,13 @@ x_1 = lean_mk_string("enable/disable warning messages for structure diamonds"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; x_2 = l_Lean_Elab_elabModifiers___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__1___closed__3; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -7720,12 +7765,12 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4; x_4 = l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(x_2, x_3, x_1); return x_4; } @@ -8296,7 +8341,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__2; -x_3 = lean_unsigned_to_nat(287u); +x_3 = lean_unsigned_to_nat(290u); x_4 = lean_unsigned_to_nat(68u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -11057,7 +11102,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_mkCompositeField___closed__1; -x_3 = lean_unsigned_to_nat(462u); +x_3 = lean_unsigned_to_nat(465u); x_4 = lean_unsigned_to_nat(70u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -11640,7 +11685,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_copyFields_copy___rarg___closed__1; -x_3 = lean_unsigned_to_nat(427u); +x_3 = lean_unsigned_to_nat(430u); x_4 = lean_unsigned_to_nat(85u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -13256,12 +13301,12 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_el _start: { lean_object* x_10; -x_10 = lean_ctor_get(x_1, 5); +x_10 = lean_ctor_get(x_1, 6); lean_inc(x_10); if (lean_obj_tag(x_10) == 0) { lean_object* x_11; -x_11 = lean_ctor_get(x_1, 6); +x_11 = lean_ctor_get(x_1, 7); lean_inc(x_11); lean_dec(x_1); if (lean_obj_tag(x_11) == 0) @@ -13731,7 +13776,7 @@ x_97 = l_Lean_Elab_Term_addAutoBoundImplicits(x_2, x_3, x_4, x_5, x_6, x_7, x_8, if (lean_obj_tag(x_97) == 0) { lean_object* x_98; -x_98 = lean_ctor_get(x_1, 6); +x_98 = lean_ctor_get(x_1, 7); lean_inc(x_98); lean_dec(x_1); if (lean_obj_tag(x_98) == 0) @@ -14371,7 +14416,7 @@ x_211 = l_Lean_Elab_Term_addAutoBoundImplicits(x_2, x_3, x_4, x_5, x_6, x_7, x_8 if (lean_obj_tag(x_211) == 0) { lean_object* x_212; -x_212 = lean_ctor_get(x_1, 6); +x_212 = lean_ctor_get(x_1, 7); lean_inc(x_212); lean_dec(x_1); if (lean_obj_tag(x_212) == 0) @@ -14772,7 +14817,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_el _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_9 = lean_ctor_get(x_1, 4); +x_9 = lean_ctor_get(x_1, 5); lean_inc(x_9); x_10 = l_Lean_Syntax_getArgs(x_9); lean_dec(x_9); @@ -15325,7 +15370,7 @@ _start: lean_object* x_17; uint8_t x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; x_17 = lean_ctor_get(x_1, 2); lean_inc(x_17); -x_18 = lean_ctor_get_uint8(x_1, sizeof(void*)*7 + 1); +x_18 = lean_ctor_get_uint8(x_1, sizeof(void*)*8 + 1); lean_dec(x_1); x_19 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_19, 0, x_2); @@ -15351,7 +15396,7 @@ _start: lean_object* x_17; uint8_t x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; x_17 = lean_ctor_get(x_1, 2); lean_inc(x_17); -x_18 = lean_ctor_get_uint8(x_1, sizeof(void*)*7 + 1); +x_18 = lean_ctor_get_uint8(x_1, sizeof(void*)*8 + 1); lean_dec(x_1); x_19 = 0; x_20 = lean_alloc_ctor(0, 4, 2); @@ -15552,7 +15597,7 @@ lean_inc(x_17); x_18 = lean_box(0); lean_inc(x_17); x_19 = l_Std_RBNode_insert___at_Lean_NameSet_insert___spec__1(x_2, x_17, x_18); -x_20 = lean_ctor_get(x_7, 4); +x_20 = lean_ctor_get(x_7, 5); lean_inc(x_20); lean_dec(x_7); x_21 = l_Lean_Syntax_getArgs(x_20); @@ -15824,29 +15869,30 @@ lean_inc(x_31); x_32 = lean_infer_type(x_31, x_8, x_9, x_10, x_11, x_30); if (lean_obj_tag(x_32) == 0) { -lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; lean_object* x_37; +lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); lean_dec(x_32); -x_35 = lean_ctor_get_uint8(x_16, sizeof(void*)*7); -lean_inc(x_18); -x_36 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__1), 16, 8); -lean_closure_set(x_36, 0, x_16); -lean_closure_set(x_36, 1, x_31); -lean_closure_set(x_36, 2, x_18); -lean_closure_set(x_36, 3, x_5); -lean_closure_set(x_36, 4, x_3); -lean_closure_set(x_36, 5, x_1); -lean_closure_set(x_36, 6, x_2); -lean_closure_set(x_36, 7, x_4); -x_37 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_18, x_35, x_33, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_34); -return x_37; +x_35 = lean_ctor_get(x_16, 4); +lean_inc(x_35); +x_36 = lean_ctor_get_uint8(x_16, sizeof(void*)*8); +x_37 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__1), 16, 8); +lean_closure_set(x_37, 0, x_16); +lean_closure_set(x_37, 1, x_31); +lean_closure_set(x_37, 2, x_18); +lean_closure_set(x_37, 3, x_5); +lean_closure_set(x_37, 4, x_3); +lean_closure_set(x_37, 5, x_1); +lean_closure_set(x_37, 6, x_2); +lean_closure_set(x_37, 7, x_4); +x_38 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_35, x_36, x_33, x_37, x_6, x_7, x_8, x_9, x_10, x_11, x_34); +return x_38; } else { -uint8_t x_38; +uint8_t x_39; lean_dec(x_31); lean_dec(x_10); lean_dec(x_18); @@ -15861,57 +15907,58 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_38 = !lean_is_exclusive(x_32); -if (x_38 == 0) +x_39 = !lean_is_exclusive(x_32); +if (x_39 == 0) { return x_32; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_32, 0); -x_40 = lean_ctor_get(x_32, 1); +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_32, 0); +x_41 = lean_ctor_get(x_32, 1); +lean_inc(x_41); lean_inc(x_40); -lean_inc(x_39); lean_dec(x_32); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); +return x_42; } } } } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; -x_42 = lean_ctor_get(x_23, 1); -lean_inc(x_42); -lean_dec(x_23); -x_43 = lean_ctor_get(x_24, 1); +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; lean_object* x_48; lean_object* x_49; +x_43 = lean_ctor_get(x_23, 1); lean_inc(x_43); -lean_dec(x_24); -x_44 = lean_ctor_get(x_25, 0); +lean_dec(x_23); +x_44 = lean_ctor_get(x_24, 1); lean_inc(x_44); +lean_dec(x_24); +x_45 = lean_ctor_get(x_25, 0); +lean_inc(x_45); lean_dec(x_25); -x_45 = lean_ctor_get_uint8(x_16, sizeof(void*)*7); -lean_inc(x_18); -x_46 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__2), 16, 8); -lean_closure_set(x_46, 0, x_16); -lean_closure_set(x_46, 1, x_18); -lean_closure_set(x_46, 2, x_43); -lean_closure_set(x_46, 3, x_5); -lean_closure_set(x_46, 4, x_3); -lean_closure_set(x_46, 5, x_1); -lean_closure_set(x_46, 6, x_2); -lean_closure_set(x_46, 7, x_4); -x_47 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_18, x_45, x_44, x_46, x_6, x_7, x_8, x_9, x_10, x_11, x_42); -return x_47; +x_46 = lean_ctor_get(x_16, 4); +lean_inc(x_46); +x_47 = lean_ctor_get_uint8(x_16, sizeof(void*)*8); +x_48 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__2), 16, 8); +lean_closure_set(x_48, 0, x_16); +lean_closure_set(x_48, 1, x_18); +lean_closure_set(x_48, 2, x_44); +lean_closure_set(x_48, 3, x_5); +lean_closure_set(x_48, 4, x_3); +lean_closure_set(x_48, 5, x_1); +lean_closure_set(x_48, 6, x_2); +lean_closure_set(x_48, 7, x_4); +x_49 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_46, x_47, x_45, x_48, x_6, x_7, x_8, x_9, x_10, x_11, x_43); +return x_49; } } else { -uint8_t x_48; +uint8_t x_50; lean_dec(x_10); lean_dec(x_18); lean_dec(x_16); @@ -15925,330 +15972,330 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_48 = !lean_is_exclusive(x_23); -if (x_48 == 0) +x_50 = !lean_is_exclusive(x_23); +if (x_50 == 0) { return x_23; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_49 = lean_ctor_get(x_23, 0); -x_50 = lean_ctor_get(x_23, 1); -lean_inc(x_50); -lean_inc(x_49); +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_23, 0); +x_52 = lean_ctor_get(x_23, 1); +lean_inc(x_52); +lean_inc(x_51); lean_dec(x_23); -x_51 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_51, 0, x_49); -lean_ctor_set(x_51, 1, x_50); -return x_51; +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; } } } else { -lean_object* x_52; uint8_t x_53; -x_52 = lean_ctor_get(x_19, 0); -lean_inc(x_52); +lean_object* x_54; uint8_t x_55; +x_54 = lean_ctor_get(x_19, 0); +lean_inc(x_54); lean_dec(x_19); -x_53 = lean_ctor_get_uint8(x_52, sizeof(void*)*4); -switch (x_53) { +x_55 = lean_ctor_get_uint8(x_54, sizeof(void*)*4); +switch (x_55) { case 0: { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_52); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_54 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_54, 0, x_18); -x_55 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_56 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_54); -x_57 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__6; +x_56 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_56, 0, x_18); +x_57 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; x_58 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_58, 0, x_56); -lean_ctor_set(x_58, 1, x_57); -x_59 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg(x_58, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_56); +x_59 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__6; +x_60 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +x_61 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg(x_60, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_59; +return x_61; } case 1: { -lean_object* x_60; -x_60 = lean_ctor_get(x_16, 6); -lean_inc(x_60); -if (lean_obj_tag(x_60) == 0) +lean_object* x_62; +x_62 = lean_ctor_get(x_16, 7); +lean_inc(x_62); +if (lean_obj_tag(x_62) == 0) { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_dec(x_52); +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_61 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_61, 0, x_18); -x_62 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_63 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_63, 0, x_62); -lean_ctor_set(x_63, 1, x_61); -x_64 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_63 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_63, 0, x_18); +x_64 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; x_65 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -x_66 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__3___rarg(x_65, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_63); +x_66 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_67 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +x_68 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__3___rarg(x_67, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_66; +return x_68; } else { -lean_object* x_67; -x_67 = lean_ctor_get(x_16, 5); -lean_inc(x_67); -if (lean_obj_tag(x_67) == 0) -{ -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_60, 0); -lean_inc(x_68); -lean_dec(x_60); -x_69 = lean_ctor_get(x_52, 0); +lean_object* x_69; +x_69 = lean_ctor_get(x_16, 6); lean_inc(x_69); -x_70 = l_Lean_NameSet_contains(x_4, x_69); -lean_dec(x_69); -if (x_70 == 0) +if (lean_obj_tag(x_69) == 0) { -lean_object* x_71; lean_object* x_72; +lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_70 = lean_ctor_get(x_62, 0); +lean_inc(x_70); +lean_dec(x_62); +x_71 = lean_ctor_get(x_54, 0); +lean_inc(x_71); +x_72 = l_Lean_NameSet_contains(x_4, x_71); +lean_dec(x_71); +if (x_72 == 0) +{ +lean_object* x_73; lean_object* x_74; lean_dec(x_18); -x_71 = lean_box(0); -x_72 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_52, x_4, x_5, x_3, x_1, x_2, x_16, x_68, x_71, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_72; +x_73 = lean_box(0); +x_74 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_54, x_4, x_5, x_3, x_1, x_2, x_16, x_70, x_73, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_74; } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; -lean_dec(x_68); -lean_dec(x_52); +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; uint8_t x_81; +lean_dec(x_70); +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_73 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_73, 0, x_18); -x_74 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_75 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_75, 0, x_74); -lean_ctor_set(x_75, 1, x_73); -x_76 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_75 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_75, 0, x_18); +x_76 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; x_77 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_77, 0, x_75); -lean_ctor_set(x_77, 1, x_76); -x_78 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_77, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_75); +x_78 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_79 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +x_80 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_79, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -x_79 = !lean_is_exclusive(x_78); -if (x_79 == 0) +x_81 = !lean_is_exclusive(x_80); +if (x_81 == 0) { -return x_78; +return x_80; } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_78, 0); -x_81 = lean_ctor_get(x_78, 1); -lean_inc(x_81); -lean_inc(x_80); -lean_dec(x_78); -x_82 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_82, 0, x_80); -lean_ctor_set(x_82, 1, x_81); -return x_82; +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_80, 0); +x_83 = lean_ctor_get(x_80, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_80); +x_84 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -lean_dec(x_60); -lean_dec(x_52); +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_62); +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_83 = lean_ctor_get(x_67, 0); -lean_inc(x_83); -lean_dec(x_67); -x_84 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_84, 0, x_18); -x_85 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; -x_86 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_86, 0, x_85); -lean_ctor_set(x_86, 1, x_84); -x_87 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_85 = lean_ctor_get(x_69, 0); +lean_inc(x_85); +lean_dec(x_69); +x_86 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_86, 0, x_18); +x_87 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; x_88 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_88, 0, x_86); -lean_ctor_set(x_88, 1, x_87); -x_89 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__4___rarg(x_83, x_88, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_89; +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_86); +x_89 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_90 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_90, 0, x_88); +lean_ctor_set(x_90, 1, x_89); +x_91 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__4___rarg(x_85, x_90, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_91; } } } case 2: { -lean_object* x_90; -x_90 = lean_ctor_get(x_16, 6); -lean_inc(x_90); -if (lean_obj_tag(x_90) == 0) +lean_object* x_92; +x_92 = lean_ctor_get(x_16, 7); +lean_inc(x_92); +if (lean_obj_tag(x_92) == 0) { -lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_52); +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_91 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_91, 0, x_18); -x_92 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_93 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_91); -x_94 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_93 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_93, 0, x_18); +x_94 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; x_95 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_94); -x_96 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__6___rarg(x_95, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_ctor_set(x_95, 0, x_94); +lean_ctor_set(x_95, 1, x_93); +x_96 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_97 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_97, 0, x_95); +lean_ctor_set(x_97, 1, x_96); +x_98 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__6___rarg(x_97, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_96; +return x_98; } else { -lean_object* x_97; -x_97 = lean_ctor_get(x_16, 5); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) -{ -lean_object* x_98; lean_object* x_99; uint8_t x_100; -x_98 = lean_ctor_get(x_90, 0); -lean_inc(x_98); -lean_dec(x_90); -x_99 = lean_ctor_get(x_52, 0); +lean_object* x_99; +x_99 = lean_ctor_get(x_16, 6); lean_inc(x_99); -x_100 = l_Lean_NameSet_contains(x_4, x_99); -lean_dec(x_99); -if (x_100 == 0) +if (lean_obj_tag(x_99) == 0) { -lean_object* x_101; lean_object* x_102; +lean_object* x_100; lean_object* x_101; uint8_t x_102; +x_100 = lean_ctor_get(x_92, 0); +lean_inc(x_100); +lean_dec(x_92); +x_101 = lean_ctor_get(x_54, 0); +lean_inc(x_101); +x_102 = l_Lean_NameSet_contains(x_4, x_101); +lean_dec(x_101); +if (x_102 == 0) +{ +lean_object* x_103; lean_object* x_104; lean_dec(x_18); -x_101 = lean_box(0); -x_102 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_52, x_4, x_5, x_3, x_1, x_2, x_16, x_98, x_101, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_102; +x_103 = lean_box(0); +x_104 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_54, x_4, x_5, x_3, x_1, x_2, x_16, x_100, x_103, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_104; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; uint8_t x_109; -lean_dec(x_98); -lean_dec(x_52); +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; uint8_t x_111; +lean_dec(x_100); +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_103 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_103, 0, x_18); -x_104 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_105 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_105, 0, x_104); -lean_ctor_set(x_105, 1, x_103); -x_106 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_105 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_105, 0, x_18); +x_106 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; x_107 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_107, 0, x_105); -lean_ctor_set(x_107, 1, x_106); -x_108 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_107, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_ctor_set(x_107, 0, x_106); +lean_ctor_set(x_107, 1, x_105); +x_108 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_109 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_109, 0, x_107); +lean_ctor_set(x_109, 1, x_108); +x_110 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_109, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -x_109 = !lean_is_exclusive(x_108); -if (x_109 == 0) +x_111 = !lean_is_exclusive(x_110); +if (x_111 == 0) { -return x_108; +return x_110; } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_110 = lean_ctor_get(x_108, 0); -x_111 = lean_ctor_get(x_108, 1); -lean_inc(x_111); -lean_inc(x_110); -lean_dec(x_108); -x_112 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_112, 0, x_110); -lean_ctor_set(x_112, 1, x_111); -return x_112; +lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_112 = lean_ctor_get(x_110, 0); +x_113 = lean_ctor_get(x_110, 1); +lean_inc(x_113); +lean_inc(x_112); +lean_dec(x_110); +x_114 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_114, 0, x_112); +lean_ctor_set(x_114, 1, x_113); +return x_114; } } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; -lean_dec(x_90); -lean_dec(x_52); +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_dec(x_92); +lean_dec(x_54); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_113 = lean_ctor_get(x_97, 0); -lean_inc(x_113); -lean_dec(x_97); -x_114 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_114, 0, x_18); -x_115 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; -x_116 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_116, 0, x_115); -lean_ctor_set(x_116, 1, x_114); -x_117 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_115 = lean_ctor_get(x_99, 0); +lean_inc(x_115); +lean_dec(x_99); +x_116 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_116, 0, x_18); +x_117 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; x_118 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_118, 0, x_116); -lean_ctor_set(x_118, 1, x_117); -x_119 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__7___rarg(x_113, x_118, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_119; +lean_ctor_set(x_118, 0, x_117); +lean_ctor_set(x_118, 1, x_116); +x_119 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_120 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_120, 0, x_118); +lean_ctor_set(x_120, 1, x_119); +x_121 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__7___rarg(x_115, x_120, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_121; } } } default: { -lean_object* x_120; lean_object* x_121; -lean_dec(x_52); +lean_object* x_122; lean_object* x_123; +lean_dec(x_54); lean_dec(x_18); lean_dec(x_16); lean_dec(x_5); @@ -16256,77 +16303,77 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_120 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__12; -x_121 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__9___rarg(x_120, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_122 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__12; +x_123 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__9___rarg(x_122, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_121; +return x_123; } } } } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; -x_122 = lean_ctor_get(x_10, 0); -x_123 = lean_ctor_get(x_10, 1); -x_124 = lean_ctor_get(x_10, 2); -x_125 = lean_ctor_get(x_10, 3); -x_126 = lean_ctor_get(x_10, 4); -x_127 = lean_ctor_get(x_10, 5); -x_128 = lean_ctor_get(x_10, 6); -x_129 = lean_ctor_get(x_10, 7); +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_124 = lean_ctor_get(x_10, 0); +x_125 = lean_ctor_get(x_10, 1); +x_126 = lean_ctor_get(x_10, 2); +x_127 = lean_ctor_get(x_10, 3); +x_128 = lean_ctor_get(x_10, 4); +x_129 = lean_ctor_get(x_10, 5); +x_130 = lean_ctor_get(x_10, 6); +x_131 = lean_ctor_get(x_10, 7); +lean_inc(x_131); +lean_inc(x_130); lean_inc(x_129); lean_inc(x_128); lean_inc(x_127); lean_inc(x_126); lean_inc(x_125); lean_inc(x_124); -lean_inc(x_123); -lean_inc(x_122); lean_dec(x_10); -x_130 = l_Lean_replaceRef(x_17, x_125); -lean_dec(x_125); +x_132 = l_Lean_replaceRef(x_17, x_127); +lean_dec(x_127); lean_dec(x_17); -x_131 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_131, 0, x_122); -lean_ctor_set(x_131, 1, x_123); -lean_ctor_set(x_131, 2, x_124); -lean_ctor_set(x_131, 3, x_130); -lean_ctor_set(x_131, 4, x_126); -lean_ctor_set(x_131, 5, x_127); -lean_ctor_set(x_131, 6, x_128); -lean_ctor_set(x_131, 7, x_129); +x_133 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_133, 0, x_124); +lean_ctor_set(x_133, 1, x_125); +lean_ctor_set(x_133, 2, x_126); +lean_ctor_set(x_133, 3, x_132); +lean_ctor_set(x_133, 4, x_128); +lean_ctor_set(x_133, 5, x_129); +lean_ctor_set(x_133, 6, x_130); +lean_ctor_set(x_133, 7, x_131); if (lean_obj_tag(x_19) == 0) { -lean_object* x_132; +lean_object* x_134; lean_inc(x_11); -lean_inc(x_131); +lean_inc(x_133); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_16); -x_132 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabFieldTypeValue(x_16, x_6, x_7, x_8, x_9, x_131, x_11, x_12); -if (lean_obj_tag(x_132) == 0) -{ -lean_object* x_133; lean_object* x_134; -x_133 = lean_ctor_get(x_132, 0); -lean_inc(x_133); -x_134 = lean_ctor_get(x_133, 0); -lean_inc(x_134); +x_134 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_elabFieldTypeValue(x_16, x_6, x_7, x_8, x_9, x_133, x_11, x_12); if (lean_obj_tag(x_134) == 0) { -lean_object* x_135; -x_135 = lean_ctor_get(x_133, 1); +lean_object* x_135; lean_object* x_136; +x_135 = lean_ctor_get(x_134, 0); lean_inc(x_135); -lean_dec(x_133); -if (lean_obj_tag(x_135) == 0) +x_136 = lean_ctor_get(x_135, 0); +lean_inc(x_136); +if (lean_obj_tag(x_136) == 0) { -lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_object* x_137; +x_137 = lean_ctor_get(x_135, 1); +lean_inc(x_137); +lean_dec(x_135); +if (lean_obj_tag(x_137) == 0) +{ +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_dec(x_18); lean_dec(x_16); lean_dec(x_5); @@ -16334,126 +16381,61 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_136 = lean_ctor_get(x_132, 1); -lean_inc(x_136); -lean_dec(x_132); -x_137 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__2; -x_138 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__1___rarg(x_137, x_6, x_7, x_8, x_9, x_131, x_11, x_136); +x_138 = lean_ctor_get(x_134, 1); +lean_inc(x_138); +lean_dec(x_134); +x_139 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__2; +x_140 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__1___rarg(x_139, x_6, x_7, x_8, x_9, x_133, x_11, x_138); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_138; +return x_140; } else { -lean_object* x_139; lean_object* x_140; lean_object* x_141; -x_139 = lean_ctor_get(x_132, 1); -lean_inc(x_139); -lean_dec(x_132); -x_140 = lean_ctor_get(x_135, 0); -lean_inc(x_140); -lean_dec(x_135); +lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_141 = lean_ctor_get(x_134, 1); +lean_inc(x_141); +lean_dec(x_134); +x_142 = lean_ctor_get(x_137, 0); +lean_inc(x_142); +lean_dec(x_137); lean_inc(x_11); -lean_inc(x_131); +lean_inc(x_133); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_140); -x_141 = lean_infer_type(x_140, x_8, x_9, x_131, x_11, x_139); -if (lean_obj_tag(x_141) == 0) -{ -lean_object* x_142; lean_object* x_143; uint8_t x_144; lean_object* x_145; lean_object* x_146; -x_142 = lean_ctor_get(x_141, 0); lean_inc(x_142); -x_143 = lean_ctor_get(x_141, 1); -lean_inc(x_143); -lean_dec(x_141); -x_144 = lean_ctor_get_uint8(x_16, sizeof(void*)*7); -lean_inc(x_18); -x_145 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__1), 16, 8); -lean_closure_set(x_145, 0, x_16); -lean_closure_set(x_145, 1, x_140); -lean_closure_set(x_145, 2, x_18); -lean_closure_set(x_145, 3, x_5); -lean_closure_set(x_145, 4, x_3); -lean_closure_set(x_145, 5, x_1); -lean_closure_set(x_145, 6, x_2); -lean_closure_set(x_145, 7, x_4); -x_146 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_18, x_144, x_142, x_145, x_6, x_7, x_8, x_9, x_131, x_11, x_143); -return x_146; +x_143 = lean_infer_type(x_142, x_8, x_9, x_133, x_11, x_141); +if (lean_obj_tag(x_143) == 0) +{ +lean_object* x_144; lean_object* x_145; lean_object* x_146; uint8_t x_147; lean_object* x_148; lean_object* x_149; +x_144 = lean_ctor_get(x_143, 0); +lean_inc(x_144); +x_145 = lean_ctor_get(x_143, 1); +lean_inc(x_145); +lean_dec(x_143); +x_146 = lean_ctor_get(x_16, 4); +lean_inc(x_146); +x_147 = lean_ctor_get_uint8(x_16, sizeof(void*)*8); +x_148 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__1), 16, 8); +lean_closure_set(x_148, 0, x_16); +lean_closure_set(x_148, 1, x_142); +lean_closure_set(x_148, 2, x_18); +lean_closure_set(x_148, 3, x_5); +lean_closure_set(x_148, 4, x_3); +lean_closure_set(x_148, 5, x_1); +lean_closure_set(x_148, 6, x_2); +lean_closure_set(x_148, 7, x_4); +x_149 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_146, x_147, x_144, x_148, x_6, x_7, x_8, x_9, x_133, x_11, x_145); +return x_149; } else { -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; -lean_dec(x_140); -lean_dec(x_131); -lean_dec(x_18); -lean_dec(x_16); -lean_dec(x_11); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_147 = lean_ctor_get(x_141, 0); -lean_inc(x_147); -x_148 = lean_ctor_get(x_141, 1); -lean_inc(x_148); -if (lean_is_exclusive(x_141)) { - lean_ctor_release(x_141, 0); - lean_ctor_release(x_141, 1); - x_149 = x_141; -} else { - lean_dec_ref(x_141); - x_149 = lean_box(0); -} -if (lean_is_scalar(x_149)) { - x_150 = lean_alloc_ctor(1, 2, 0); -} else { - x_150 = x_149; -} -lean_ctor_set(x_150, 0, x_147); -lean_ctor_set(x_150, 1, x_148); -return x_150; -} -} -} -else -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; uint8_t x_154; lean_object* x_155; lean_object* x_156; -x_151 = lean_ctor_get(x_132, 1); -lean_inc(x_151); -lean_dec(x_132); -x_152 = lean_ctor_get(x_133, 1); -lean_inc(x_152); +lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +lean_dec(x_142); lean_dec(x_133); -x_153 = lean_ctor_get(x_134, 0); -lean_inc(x_153); -lean_dec(x_134); -x_154 = lean_ctor_get_uint8(x_16, sizeof(void*)*7); -lean_inc(x_18); -x_155 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__2), 16, 8); -lean_closure_set(x_155, 0, x_16); -lean_closure_set(x_155, 1, x_18); -lean_closure_set(x_155, 2, x_152); -lean_closure_set(x_155, 3, x_5); -lean_closure_set(x_155, 4, x_3); -lean_closure_set(x_155, 5, x_1); -lean_closure_set(x_155, 6, x_2); -lean_closure_set(x_155, 7, x_4); -x_156 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_18, x_154, x_153, x_155, x_6, x_7, x_8, x_9, x_131, x_11, x_151); -return x_156; -} -} -else -{ -lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; -lean_dec(x_131); lean_dec(x_18); lean_dec(x_16); lean_dec(x_11); @@ -16466,336 +16448,403 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_157 = lean_ctor_get(x_132, 0); +x_150 = lean_ctor_get(x_143, 0); +lean_inc(x_150); +x_151 = lean_ctor_get(x_143, 1); +lean_inc(x_151); +if (lean_is_exclusive(x_143)) { + lean_ctor_release(x_143, 0); + lean_ctor_release(x_143, 1); + x_152 = x_143; +} else { + lean_dec_ref(x_143); + x_152 = lean_box(0); +} +if (lean_is_scalar(x_152)) { + x_153 = lean_alloc_ctor(1, 2, 0); +} else { + x_153 = x_152; +} +lean_ctor_set(x_153, 0, x_150); +lean_ctor_set(x_153, 1, x_151); +return x_153; +} +} +} +else +{ +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; uint8_t x_158; lean_object* x_159; lean_object* x_160; +x_154 = lean_ctor_get(x_134, 1); +lean_inc(x_154); +lean_dec(x_134); +x_155 = lean_ctor_get(x_135, 1); +lean_inc(x_155); +lean_dec(x_135); +x_156 = lean_ctor_get(x_136, 0); +lean_inc(x_156); +lean_dec(x_136); +x_157 = lean_ctor_get(x_16, 4); lean_inc(x_157); -x_158 = lean_ctor_get(x_132, 1); -lean_inc(x_158); -if (lean_is_exclusive(x_132)) { - lean_ctor_release(x_132, 0); - lean_ctor_release(x_132, 1); - x_159 = x_132; -} else { - lean_dec_ref(x_132); - x_159 = lean_box(0); -} -if (lean_is_scalar(x_159)) { - x_160 = lean_alloc_ctor(1, 2, 0); -} else { - x_160 = x_159; -} -lean_ctor_set(x_160, 0, x_157); -lean_ctor_set(x_160, 1, x_158); +x_158 = lean_ctor_get_uint8(x_16, sizeof(void*)*8); +x_159 = lean_alloc_closure((void*)(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__2), 16, 8); +lean_closure_set(x_159, 0, x_16); +lean_closure_set(x_159, 1, x_18); +lean_closure_set(x_159, 2, x_155); +lean_closure_set(x_159, 3, x_5); +lean_closure_set(x_159, 4, x_3); +lean_closure_set(x_159, 5, x_1); +lean_closure_set(x_159, 6, x_2); +lean_closure_set(x_159, 7, x_4); +x_160 = l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg(x_157, x_158, x_156, x_159, x_6, x_7, x_8, x_9, x_133, x_11, x_154); return x_160; } } else { -lean_object* x_161; uint8_t x_162; -x_161 = lean_ctor_get(x_19, 0); +lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +lean_dec(x_133); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_161 = lean_ctor_get(x_134, 0); lean_inc(x_161); +x_162 = lean_ctor_get(x_134, 1); +lean_inc(x_162); +if (lean_is_exclusive(x_134)) { + lean_ctor_release(x_134, 0); + lean_ctor_release(x_134, 1); + x_163 = x_134; +} else { + lean_dec_ref(x_134); + x_163 = lean_box(0); +} +if (lean_is_scalar(x_163)) { + x_164 = lean_alloc_ctor(1, 2, 0); +} else { + x_164 = x_163; +} +lean_ctor_set(x_164, 0, x_161); +lean_ctor_set(x_164, 1, x_162); +return x_164; +} +} +else +{ +lean_object* x_165; uint8_t x_166; +x_165 = lean_ctor_get(x_19, 0); +lean_inc(x_165); lean_dec(x_19); -x_162 = lean_ctor_get_uint8(x_161, sizeof(void*)*4); -switch (x_162) { +x_166 = lean_ctor_get_uint8(x_165, sizeof(void*)*4); +switch (x_166) { case 0: { -lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; -lean_dec(x_161); +lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_163 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_163, 0, x_18); -x_164 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_165 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_165, 0, x_164); -lean_ctor_set(x_165, 1, x_163); -x_166 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__6; -x_167 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_167, 0, x_165); -lean_ctor_set(x_167, 1, x_166); -x_168 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg(x_167, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_167 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_167, 0, x_18); +x_168 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; +x_169 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_169, 0, x_168); +lean_ctor_set(x_169, 1, x_167); +x_170 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__6; +x_171 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_171, 0, x_169); +lean_ctor_set(x_171, 1, x_170); +x_172 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg(x_171, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_168; +return x_172; } case 1: { -lean_object* x_169; -x_169 = lean_ctor_get(x_16, 6); -lean_inc(x_169); -if (lean_obj_tag(x_169) == 0) +lean_object* x_173; +x_173 = lean_ctor_get(x_16, 7); +lean_inc(x_173); +if (lean_obj_tag(x_173) == 0) { -lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; -lean_dec(x_161); +lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_170 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_170, 0, x_18); -x_171 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_172 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_172, 0, x_171); -lean_ctor_set(x_172, 1, x_170); -x_173 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; -x_174 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_174, 0, x_172); -lean_ctor_set(x_174, 1, x_173); -x_175 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__3___rarg(x_174, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_174 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_174, 0, x_18); +x_175 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; +x_176 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_176, 0, x_175); +lean_ctor_set(x_176, 1, x_174); +x_177 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_178 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_178, 0, x_176); +lean_ctor_set(x_178, 1, x_177); +x_179 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__3___rarg(x_178, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_175; +return x_179; } else { -lean_object* x_176; -x_176 = lean_ctor_get(x_16, 5); -lean_inc(x_176); -if (lean_obj_tag(x_176) == 0) +lean_object* x_180; +x_180 = lean_ctor_get(x_16, 6); +lean_inc(x_180); +if (lean_obj_tag(x_180) == 0) { -lean_object* x_177; lean_object* x_178; uint8_t x_179; -x_177 = lean_ctor_get(x_169, 0); -lean_inc(x_177); -lean_dec(x_169); -x_178 = lean_ctor_get(x_161, 0); -lean_inc(x_178); -x_179 = l_Lean_NameSet_contains(x_4, x_178); -lean_dec(x_178); -if (x_179 == 0) +lean_object* x_181; lean_object* x_182; uint8_t x_183; +x_181 = lean_ctor_get(x_173, 0); +lean_inc(x_181); +lean_dec(x_173); +x_182 = lean_ctor_get(x_165, 0); +lean_inc(x_182); +x_183 = l_Lean_NameSet_contains(x_4, x_182); +lean_dec(x_182); +if (x_183 == 0) { -lean_object* x_180; lean_object* x_181; +lean_object* x_184; lean_object* x_185; lean_dec(x_18); -x_180 = lean_box(0); -x_181 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_161, x_4, x_5, x_3, x_1, x_2, x_16, x_177, x_180, x_6, x_7, x_8, x_9, x_131, x_11, x_12); -return x_181; +x_184 = lean_box(0); +x_185 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_165, x_4, x_5, x_3, x_1, x_2, x_16, x_181, x_184, x_6, x_7, x_8, x_9, x_133, x_11, x_12); +return x_185; } else { -lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; -lean_dec(x_177); -lean_dec(x_161); +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; +lean_dec(x_181); +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_182 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_182, 0, x_18); -x_183 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_184 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_184, 0, x_183); -lean_ctor_set(x_184, 1, x_182); -x_185 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; -x_186 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_186, 0, x_184); -lean_ctor_set(x_186, 1, x_185); -x_187 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_186, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_186 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_186, 0, x_18); +x_187 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; +x_188 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_188, 0, x_187); +lean_ctor_set(x_188, 1, x_186); +x_189 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_190 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_190, 0, x_188); +lean_ctor_set(x_190, 1, x_189); +x_191 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_190, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -x_188 = lean_ctor_get(x_187, 0); -lean_inc(x_188); -x_189 = lean_ctor_get(x_187, 1); -lean_inc(x_189); -if (lean_is_exclusive(x_187)) { - lean_ctor_release(x_187, 0); - lean_ctor_release(x_187, 1); - x_190 = x_187; +x_192 = lean_ctor_get(x_191, 0); +lean_inc(x_192); +x_193 = lean_ctor_get(x_191, 1); +lean_inc(x_193); +if (lean_is_exclusive(x_191)) { + lean_ctor_release(x_191, 0); + lean_ctor_release(x_191, 1); + x_194 = x_191; } else { - lean_dec_ref(x_187); - x_190 = lean_box(0); + lean_dec_ref(x_191); + x_194 = lean_box(0); } -if (lean_is_scalar(x_190)) { - x_191 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_194)) { + x_195 = lean_alloc_ctor(1, 2, 0); } else { - x_191 = x_190; + x_195 = x_194; } -lean_ctor_set(x_191, 0, x_188); -lean_ctor_set(x_191, 1, x_189); -return x_191; +lean_ctor_set(x_195, 0, x_192); +lean_ctor_set(x_195, 1, x_193); +return x_195; } } else { -lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; -lean_dec(x_169); -lean_dec(x_161); +lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; +lean_dec(x_173); +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_192 = lean_ctor_get(x_176, 0); -lean_inc(x_192); -lean_dec(x_176); -x_193 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_193, 0, x_18); -x_194 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; -x_195 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_195, 0, x_194); -lean_ctor_set(x_195, 1, x_193); -x_196 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; -x_197 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_197, 0, x_195); -lean_ctor_set(x_197, 1, x_196); -x_198 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__4___rarg(x_192, x_197, x_6, x_7, x_8, x_9, x_131, x_11, x_12); -return x_198; +x_196 = lean_ctor_get(x_180, 0); +lean_inc(x_196); +lean_dec(x_180); +x_197 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_197, 0, x_18); +x_198 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; +x_199 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_199, 0, x_198); +lean_ctor_set(x_199, 1, x_197); +x_200 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_201 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_201, 0, x_199); +lean_ctor_set(x_201, 1, x_200); +x_202 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__4___rarg(x_196, x_201, x_6, x_7, x_8, x_9, x_133, x_11, x_12); +return x_202; } } } case 2: { -lean_object* x_199; -x_199 = lean_ctor_get(x_16, 6); -lean_inc(x_199); -if (lean_obj_tag(x_199) == 0) +lean_object* x_203; +x_203 = lean_ctor_get(x_16, 7); +lean_inc(x_203); +if (lean_obj_tag(x_203) == 0) { -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; -lean_dec(x_161); +lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_200 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_200, 0, x_18); -x_201 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_202 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_202, 0, x_201); -lean_ctor_set(x_202, 1, x_200); -x_203 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; -x_204 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_204, 0, x_202); -lean_ctor_set(x_204, 1, x_203); -x_205 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__6___rarg(x_204, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_204 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_204, 0, x_18); +x_205 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; +x_206 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_206, 0, x_205); +lean_ctor_set(x_206, 1, x_204); +x_207 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__4; +x_208 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_208, 0, x_206); +lean_ctor_set(x_208, 1, x_207); +x_209 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__6___rarg(x_208, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_205; +return x_209; } else { -lean_object* x_206; -x_206 = lean_ctor_get(x_16, 5); -lean_inc(x_206); -if (lean_obj_tag(x_206) == 0) +lean_object* x_210; +x_210 = lean_ctor_get(x_16, 6); +lean_inc(x_210); +if (lean_obj_tag(x_210) == 0) { -lean_object* x_207; lean_object* x_208; uint8_t x_209; -x_207 = lean_ctor_get(x_199, 0); -lean_inc(x_207); -lean_dec(x_199); -x_208 = lean_ctor_get(x_161, 0); -lean_inc(x_208); -x_209 = l_Lean_NameSet_contains(x_4, x_208); -lean_dec(x_208); -if (x_209 == 0) +lean_object* x_211; lean_object* x_212; uint8_t x_213; +x_211 = lean_ctor_get(x_203, 0); +lean_inc(x_211); +lean_dec(x_203); +x_212 = lean_ctor_get(x_165, 0); +lean_inc(x_212); +x_213 = l_Lean_NameSet_contains(x_4, x_212); +lean_dec(x_212); +if (x_213 == 0) { -lean_object* x_210; lean_object* x_211; +lean_object* x_214; lean_object* x_215; lean_dec(x_18); -x_210 = lean_box(0); -x_211 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_161, x_4, x_5, x_3, x_1, x_2, x_16, x_207, x_210, x_6, x_7, x_8, x_9, x_131, x_11, x_12); -return x_211; +x_214 = lean_box(0); +x_215 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___lambda__4(x_165, x_4, x_5, x_3, x_1, x_2, x_16, x_211, x_214, x_6, x_7, x_8, x_9, x_133, x_11, x_12); +return x_215; } else { -lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; -lean_dec(x_207); -lean_dec(x_161); +lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; +lean_dec(x_211); +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_212 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_212, 0, x_18); -x_213 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; -x_214 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_214, 0, x_213); -lean_ctor_set(x_214, 1, x_212); -x_215 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; -x_216 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_216, 0, x_214); -lean_ctor_set(x_216, 1, x_215); -x_217 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_216, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_216 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_216, 0, x_18); +x_217 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___closed__2; +x_218 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_218, 0, x_217); +lean_ctor_set(x_218, 1, x_216); +x_219 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__6; +x_220 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_220, 0, x_218); +lean_ctor_set(x_220, 1, x_219); +x_221 = l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__1(x_220, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -x_218 = lean_ctor_get(x_217, 0); -lean_inc(x_218); -x_219 = lean_ctor_get(x_217, 1); -lean_inc(x_219); -if (lean_is_exclusive(x_217)) { - lean_ctor_release(x_217, 0); - lean_ctor_release(x_217, 1); - x_220 = x_217; +x_222 = lean_ctor_get(x_221, 0); +lean_inc(x_222); +x_223 = lean_ctor_get(x_221, 1); +lean_inc(x_223); +if (lean_is_exclusive(x_221)) { + lean_ctor_release(x_221, 0); + lean_ctor_release(x_221, 1); + x_224 = x_221; } else { - lean_dec_ref(x_217); - x_220 = lean_box(0); + lean_dec_ref(x_221); + x_224 = lean_box(0); } -if (lean_is_scalar(x_220)) { - x_221 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_224)) { + x_225 = lean_alloc_ctor(1, 2, 0); } else { - x_221 = x_220; + x_225 = x_224; } -lean_ctor_set(x_221, 0, x_218); -lean_ctor_set(x_221, 1, x_219); -return x_221; +lean_ctor_set(x_225, 0, x_222); +lean_ctor_set(x_225, 1, x_223); +return x_225; } } else { -lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; -lean_dec(x_199); -lean_dec(x_161); +lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; +lean_dec(x_203); +lean_dec(x_165); lean_dec(x_16); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_222 = lean_ctor_get(x_206, 0); -lean_inc(x_222); -lean_dec(x_206); -x_223 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_223, 0, x_18); -x_224 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; -x_225 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_225, 0, x_224); -lean_ctor_set(x_225, 1, x_223); -x_226 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; -x_227 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_227, 0, x_225); -lean_ctor_set(x_227, 1, x_226); -x_228 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__7___rarg(x_222, x_227, x_6, x_7, x_8, x_9, x_131, x_11, x_12); -return x_228; +x_226 = lean_ctor_get(x_210, 0); +lean_inc(x_226); +lean_dec(x_210); +x_227 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_227, 0, x_18); +x_228 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__8; +x_229 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_229, 0, x_228); +lean_ctor_set(x_229, 1, x_227); +x_230 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__10; +x_231 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_231, 0, x_229); +lean_ctor_set(x_231, 1, x_230); +x_232 = l_Lean_throwErrorAt___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__7___rarg(x_226, x_231, x_6, x_7, x_8, x_9, x_133, x_11, x_12); +return x_232; } } } default: { -lean_object* x_229; lean_object* x_230; -lean_dec(x_161); +lean_object* x_233; lean_object* x_234; +lean_dec(x_165); lean_dec(x_18); lean_dec(x_16); lean_dec(x_5); @@ -16803,14 +16852,14 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_229 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__12; -x_230 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__9___rarg(x_229, x_6, x_7, x_8, x_9, x_131, x_11, x_12); +x_233 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___rarg___closed__12; +x_234 = l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__9___rarg(x_233, x_6, x_7, x_8, x_9, x_133, x_11, x_12); lean_dec(x_11); -lean_dec(x_131); +lean_dec(x_133); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -return x_230; +return x_234; } } } @@ -20037,7 +20086,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_registerStructure___spec__2___closed__1; -x_3 = lean_unsigned_to_nat(716u); +x_3 = lean_unsigned_to_nat(719u); x_4 = lean_unsigned_to_nat(21u); x_5 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_registerStructure___spec__2___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -20058,7 +20107,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_registerStructure___spec__2___closed__1; -x_3 = lean_unsigned_to_nat(715u); +x_3 = lean_unsigned_to_nat(718u); x_4 = lean_unsigned_to_nat(23u); x_5 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_registerStructure___spec__2___closed__4; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -20084,7 +20133,7 @@ x_47 = lean_ctor_get_uint8(x_13, sizeof(void*)*4); x_48 = lean_ctor_get_uint8(x_13, sizeof(void*)*4 + 1); lean_dec(x_13); x_49 = 2; -x_50 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(x_47, x_49); +x_50 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(x_47, x_49); if (x_50 == 0) { lean_object* x_51; @@ -20116,7 +20165,7 @@ x_59 = lean_ctor_get(x_56, 0); lean_inc(x_59); lean_dec(x_56); x_60 = 3; -x_61 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(x_47, x_60); +x_61 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(x_47, x_60); x_62 = l_Lean_LocalDecl_binderInfo(x_53); lean_dec(x_53); if (x_61 == 0) @@ -20310,7 +20359,7 @@ x_104 = lean_ctor_get(x_101, 0); lean_inc(x_104); lean_dec(x_101); x_105 = 3; -x_106 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_240_(x_47, x_105); +x_106 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_beqStructFieldKind____x40_Lean_Elab_Structure___hyg_248_(x_47, x_105); x_107 = l_Lean_LocalDecl_binderInfo(x_98); lean_dec(x_98); if (x_106 == 0) @@ -21843,7 +21892,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent_copyFields___spec__1___closed__1; -x_3 = lean_unsigned_to_nat(763u); +x_3 = lean_unsigned_to_nat(766u); x_4 = lean_unsigned_to_nat(78u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -22152,7 +22201,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent_copyFields___spec__1___closed__1; -x_3 = lean_unsigned_to_nat(754u); +x_3 = lean_unsigned_to_nat(757u); x_4 = lean_unsigned_to_nat(72u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -22943,7 +22992,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__1; x_2 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent___closed__1; -x_3 = lean_unsigned_to_nat(748u); +x_3 = lean_unsigned_to_nat(751u); x_4 = lean_unsigned_to_nat(68u); x_5 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_isProjFnApp_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -28377,7 +28426,7 @@ x_15 = l_Lean_Elab_Command_elabStructure___lambda__6(x_1, x_2, x_3, x_13, x_5, x return x_15; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10178_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10191_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; @@ -28663,17 +28712,17 @@ l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___closed__3 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___closed__4 = _init_l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___closed__4(); l___private_Lean_Elab_Structure_0__Lean_Elab_Command_findFieldInfo_x3f___closed__1 = _init_l___private_Lean_Elab_Structure_0__Lean_Elab_Command_findFieldInfo_x3f___closed__1(); lean_mark_persistent(l___private_Lean_Elab_Structure_0__Lean_Elab_Command_findFieldInfo_x3f___closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__3); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247____closed__4); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__2); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__3); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260____closed__4); l_Lean_Elab_Command_structureDiamondWarning___closed__1 = _init_l_Lean_Elab_Command_structureDiamondWarning___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_structureDiamondWarning___closed__1); -res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2247_(lean_io_mk_world()); +res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_2260_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Command_structureDiamondWarning = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Command_structureDiamondWarning); @@ -28948,7 +28997,7 @@ l_Lean_Elab_Command_elabStructure___closed__10 = _init_l_Lean_Elab_Command_elabS lean_mark_persistent(l_Lean_Elab_Command_elabStructure___closed__10); l_Lean_Elab_Command_elabStructure___closed__11 = _init_l_Lean_Elab_Command_elabStructure___closed__11(); lean_mark_persistent(l_Lean_Elab_Command_elabStructure___closed__11); -res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10178_(lean_io_mk_world()); +res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_10191_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/Syntax.c b/stage0/stdlib/Lean/Elab/Syntax.c index 2a0dd77cd1..cf23cf76d8 100644 --- a/stage0/stdlib/Lean/Elab/Syntax.c +++ b/stage0/stdlib/Lean/Elab/Syntax.c @@ -50,6 +50,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabSyntaxAbbrev___lambda__1___boxe LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_checkLeftRec___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_nullKind; static lean_object* l_Lean_Elab_Term_toParserDescr_processNullaryOrCat___closed__20; +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabSyntax___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__46; extern lean_object* l_Lean_Parser_leadPrec; @@ -243,7 +244,6 @@ lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabSyntax___lambda__4___closed__10; static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__36; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_toParserDescr_process___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_inferMacroRulesAltKind___spec__1(lean_object*, lean_object*); static lean_object* l_Subarray_forInUnsafe_loop___at___private_Lean_Elab_Syntax_0__Lean_Elab_Term_mkParserSeq___spec__1___closed__13; static lean_object* l_Lean_Elab_Term_toParserDescr_processNonReserved___closed__17; @@ -305,6 +305,7 @@ static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyn LEAN_EXPORT lean_object* l_Lean_Elab_Command_strLitToPattern___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__8; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandNoKindMacroRulesAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addTrace___at_Lean_Elab_Term_checkLeftRec___spec__3___closed__5; static lean_object* l_Lean_Elab_Term_toParserDescr_ensureNoPrec___closed__1; lean_object* l_Nat_repr(lean_object*); @@ -450,7 +451,6 @@ LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Term_toParserDescr_p LEAN_EXPORT lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Term_toParserDescr_resolveParserName___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstCore___at_Lean_Elab_Term_toParserDescr_resolveParserName___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabSyntax___closed__4; -lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_append_after(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__69; static lean_object* l_Subarray_forInUnsafe_loop___at___private_Lean_Elab_Syntax_0__Lean_Elab_Term_mkParserSeq___spec__1___closed__11; @@ -579,6 +579,7 @@ lean_object* l_Lean_Elab_Term_elabBinders___rarg(lean_object*, lean_object*, lea LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_toParserDescr_process___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_forM___at_Lean_Elab_Command_elabCommand___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__55; +lean_object* l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_toParserDescr_processNullaryOrCat___closed__5; static lean_object* l_Lean_Elab_Command_elabSyntax___lambda__4___closed__1; extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; @@ -660,7 +661,6 @@ static lean_object* l_Lean_Elab_Term_toParserDescr_processNullaryOrCat___closed_ LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Elab_Term_checkLeftRec___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabSyntaxAbbrev___lambda__2___closed__6; static lean_object* l_Lean_Elab_Term_toParserDescr_processUnary___closed__6; -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclareSyntaxCat(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclareSyntaxCat(lean_object*); static lean_object* l_Lean_Elab_Term_toParserDescr_processSepBy1___lambda__1___closed__11; @@ -682,7 +682,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabSyntax___lambda__2___boxed(lean LEAN_EXPORT lean_object* l_Lean_Elab_Term_toParserDescr_processNonReserved___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Subarray_forInUnsafe_loop___at___private_Lean_Elab_Syntax_0__Lean_Elab_Term_mkParserSeq___spec__1___closed__21; -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Subarray_forInUnsafe_loop___at___private_Lean_Elab_Syntax_0__Lean_Elab_Term_mkParserSeq___spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Term_expandOptPrecedence(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: @@ -1904,11 +1903,8 @@ return x_9; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Term_checkLeftRec___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -1943,89 +1939,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -14741,7 +14779,7 @@ x_16 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_16, 0, x_2); lean_inc(x_4); lean_inc(x_3); -x_17 = l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__9(x_12, x_16, x_3, x_4, x_8); +x_17 = l_Lean_Elab_logTrace___at_Lean_Elab_Command_elabCommand___spec__14(x_12, x_16, x_3, x_4, x_8); x_18 = lean_ctor_get(x_17, 1); lean_inc(x_18); lean_dec(x_17); @@ -18840,114 +18878,6 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_5 = l_Lean_Elab_Command_getRef(x_2, x_3, x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_2, 4); -lean_inc(x_8); -lean_inc(x_8); -x_9 = l_Lean_Elab_getBetterRef(x_6, x_8); -lean_dec(x_6); -x_10 = l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(x_1, x_2, x_3, x_7); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(x_11, x_8, x_2, x_3, x_12); -lean_dec(x_2); -lean_dec(x_8); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_9); -lean_ctor_set(x_16, 1, x_15); -lean_ctor_set_tag(x_13, 1); -lean_ctor_set(x_13, 0, x_16); -return x_13; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_13, 0); -x_18 = lean_ctor_get(x_13, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_13); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_9); -lean_ctor_set(x_19, 1, x_17); -x_20 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_18); -return x_20; -} -} -} -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_replaceRef(x_1, x_7); -lean_dec(x_7); -lean_dec(x_1); -x_10 = !lean_is_exclusive(x_3); -if (x_10 == 0) -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_3, 6); -lean_dec(x_11); -lean_ctor_set(x_3, 6, x_9); -x_12 = l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(x_2, x_3, x_4, x_8); -lean_dec(x_4); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_13 = lean_ctor_get(x_3, 0); -x_14 = lean_ctor_get(x_3, 1); -x_15 = lean_ctor_get(x_3, 2); -x_16 = lean_ctor_get(x_3, 3); -x_17 = lean_ctor_get(x_3, 4); -x_18 = lean_ctor_get(x_3, 5); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_3); -x_19 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_19, 0, x_13); -lean_ctor_set(x_19, 1, x_14); -lean_ctor_set(x_19, 2, x_15); -lean_ctor_set(x_19, 3, x_16); -lean_ctor_set(x_19, 4, x_17); -lean_ctor_set(x_19, 5, x_18); -lean_ctor_set(x_19, 6, x_9); -x_20 = l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(x_2, x_19, x_4, x_8); -lean_dec(x_4); -return x_20; -} -} -} static lean_object* _init_l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1___closed__1() { _start: { @@ -19009,7 +18939,6 @@ if (x_11 == 0) { lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_dec(x_4); -lean_dec(x_3); x_12 = lean_array_get_size(x_1); x_13 = lean_unsigned_to_nat(0u); x_14 = lean_nat_dec_lt(x_13, x_12); @@ -19062,7 +18991,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); lean_dec(x_2); -lean_dec(x_1); x_77 = !lean_is_exclusive(x_74); if (x_77 == 0) { @@ -19091,7 +19019,6 @@ if (x_14 == 0) { lean_object* x_54; lean_dec(x_12); -lean_dec(x_1); x_54 = l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__12; x_17 = x_54; x_18 = x_16; @@ -19105,7 +19032,6 @@ if (x_55 == 0) { lean_object* x_56; lean_dec(x_12); -lean_dec(x_1); x_56 = l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotParser___closed__12; x_17 = x_56; x_18 = x_16; @@ -19121,7 +19047,6 @@ x_59 = l___private_Lean_Elab_Syntax_0__Lean_Elab_Command_declareSyntaxCatQuotPar lean_inc(x_8); lean_inc(x_7); x_60 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__1(x_5, x_1, x_57, x_58, x_59, x_7, x_8, x_16); -lean_dec(x_1); if (lean_obj_tag(x_60) == 0) { lean_object* x_61; lean_object* x_62; @@ -19297,9 +19222,7 @@ else lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_dec(x_5); lean_dec(x_2); -lean_dec(x_1); x_81 = l_Lean_stringToMessageData(x_3); -lean_dec(x_3); x_82 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1___closed__2; lean_inc(x_81); x_83 = lean_alloc_ctor(10, 2, 0); @@ -19316,7 +19239,7 @@ x_87 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1___closed__6; x_88 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_88, 0, x_86); lean_ctor_set(x_88, 1, x_87); -x_89 = l_Lean_throwErrorAt___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__3(x_4, x_88, x_7, x_8, x_9); +x_89 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__11(x_4, x_88, x_7, x_8, x_9); return x_89; } } @@ -19346,6 +19269,7 @@ if (x_13 == 0) lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); x_15 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1(x_1, x_3, x_2, x_9, x_11, x_14, x_4, x_5, x_12); +lean_dec(x_2); return x_15; } else @@ -19361,6 +19285,7 @@ if (x_18 == 0) lean_object* x_19; lean_object* x_20; x_19 = lean_box(0); x_20 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1(x_1, x_3, x_2, x_9, x_11, x_19, x_4, x_5, x_12); +lean_dec(x_2); return x_20; } else @@ -19370,6 +19295,7 @@ x_21 = l_Lean_Name_getPrefix(x_11); lean_dec(x_11); x_22 = lean_box(0); x_23 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1(x_1, x_3, x_2, x_9, x_21, x_22, x_4, x_5, x_12); +lean_dec(x_2); return x_23; } } @@ -19382,7 +19308,6 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -lean_dec(x_1); x_24 = !lean_is_exclusive(x_10); if (x_24 == 0) { @@ -19432,24 +19357,26 @@ lean_dec(x_1); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_throwError___at_Lean_Elab_Command_expandNoKindMacroRulesAux___spec__4(x_1, x_2, x_3, x_4); -lean_dec(x_3); -return x_5; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; x_10 = l_Lean_Elab_Command_expandNoKindMacroRulesAux___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_1); return x_10; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandNoKindMacroRulesAux___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Elab_Command_expandNoKindMacroRulesAux(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_1); +return x_7; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Command_strLitToPattern(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { diff --git a/stage0/stdlib/Lean/Elab/Tactic/Basic.c b/stage0/stdlib/Lean/Elab/Tactic/Basic.c index 158578d1be..2fad95b380 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Basic.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Basic.c @@ -5313,11 +5313,8 @@ return x_9; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_expandTacticMacroFns_loop___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -5352,89 +5349,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/Conv/Simp.c b/stage0/stdlib/Lean/Elab/Tactic/Conv/Simp.c index 2652cd802d..59b0184d5f 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Conv/Simp.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Conv/Simp.c @@ -31,8 +31,10 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimp___closed__17; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimpMatch___closed__4; lean_object* l_Lean_Meta_Simp_Result_getProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimp___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimpMatch(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimpMatch___boxed(lean_object*); @@ -50,7 +52,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimp(lean_obje static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimp___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimp___closed__5; lean_object* l_Lean_Meta_Split_simpMatch(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_Conv_updateLhs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalSimpMatch(lean_object*); lean_object* l_Lean_Elab_Tactic_mkSimpContext(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -131,7 +133,15 @@ return x_22; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Meta_simp(x_1, x_2, x_3, x_8, x_9, x_10, x_11, x_12); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { uint8_t x_11; lean_object* x_12; @@ -175,13 +185,17 @@ lean_inc(x_18); x_19 = lean_ctor_get(x_17, 1); lean_inc(x_19); lean_dec(x_17); -x_20 = lean_alloc_closure((void*)(l_Lean_Meta_simp), 8, 2); +x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed), 12, 2); lean_closure_set(x_20, 0, x_18); lean_closure_set(x_20, 1, x_15); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); x_21 = l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___rarg(x_16, x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_19); lean_dec(x_16); if (lean_obj_tag(x_21) == 0) @@ -295,17 +309,29 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp(lean_object* x_1, lean _start: { lean_object* x_11; lean_object* x_12; -x_11 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed), 10, 1); +x_11 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2___boxed), 10, 1); lean_closure_set(x_11, 0, x_1); x_12 = l_Lean_Elab_Tactic_withMainContext___rarg(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Elab_Tactic_Conv_evalSimp___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Elab_Tactic_Conv_evalSimp___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_1); return x_11; } diff --git a/stage0/stdlib/Lean/Elab/Tactic/Match.c b/stage0/stdlib/Lean/Elab/Tactic/Match.c index 97c1ae243c..bb5c5c14d8 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Match.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Match.c @@ -2873,11 +2873,8 @@ return x_9; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalMatch___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -2912,89 +2909,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/Simp.c b/stage0/stdlib/Lean/Elab/Tactic/Simp.c index 0038b52445..40f827b4da 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Simp.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Simp.c @@ -17,7 +17,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpLemmas_eraseCore___at___private_Lean_El LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_getPropHyps___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_forInAux___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_getPropHyps___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MonadRef_mkInfoFromRefPos___at_Lean_Elab_Tactic_tacticToDischarge___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___lambda__1(uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Std_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; size_t lean_usize_add(size_t, size_t); @@ -59,11 +59,12 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_m static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll___closed__5; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpContext___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpContext___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__14; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_environment_find(lean_object*, lean_object*); lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); extern lean_object* l_Lean_instHashableName; static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__22; @@ -75,7 +76,6 @@ static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__1 static lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrLemma___closed__2; uint8_t lean_name_eq(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpContext___spec__3___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_5____closed__6; static lean_object* l_Lean_throwUnknownConstant___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__9___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrLemma___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -85,15 +85,16 @@ lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Lean_throwUnknownConstant___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__9___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_withMainContext___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_TermElabM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_go(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpLemma___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_forInAux___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_getPropHyps___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_getMainModule___rarg(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__7; @@ -104,7 +105,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Simp_DischargeWrapper_with(lean_obje LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2(lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__20; static lean_object* l_Lean_Elab_Tactic_mkSimpContext___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoTree___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_5____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -116,6 +116,7 @@ lean_object* l_List_mapTRAux___at_Lean_resolveGlobalConstNoOverload___spec__1(le LEAN_EXPORT lean_object* l_Lean_Meta_SimpLemmas_eraseCore___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpLemmas_erase___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__17___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__19(uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ConstantInfo_levelParams(lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_ElabSimpArgsResult_starArg___default; @@ -133,7 +134,6 @@ LEAN_EXPORT lean_object* l_Lean_throwUnknownConstant___at___private_Lean_Elab_Ta LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_eval____x40_Lean_Elab_Tactic_Simp___hyg_108____boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_abstractMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__15; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__1; @@ -169,21 +169,22 @@ LEAN_EXPORT lean_object* l_Std_PersistentArray_forIn___at___private_Lean_Elab_Ta static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_resolveGlobalConstNoOverloadWithInfo___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalConst___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoLeaf___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getId(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withoutModifyingState___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__1___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__2___closed__8; lean_object* lean_format_pretty(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstCore___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpLemmas_erase___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars_loop(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_getPropHyps___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_getCurrMacroScope(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withoutModifyingState___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__1___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__2___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpLemmas_erase___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__17___closed__1; static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__7; lean_object* l_Lean_Elab_Tactic_getMainGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -196,7 +197,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_a static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCtxCore___closed__3; static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstCore___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__7___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConst(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__19___closed__2; lean_object* l_Lean_LocalDecl_toExpr(lean_object*); @@ -274,6 +274,7 @@ lean_object* l_Lean_Meta_getLocalDeclFromUserName(lean_object*, lean_object*, le static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll___closed__2; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTRAux___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___boxed__const__1; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwUnknownConstant___at___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_elabSimpArgs___spec__9___closed__2; static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__3; @@ -319,16 +320,15 @@ lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_eval____x40_Lean_Elab_Tactic_Simp___hyg_5_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_eval____x40_Lean_Elab_Tactic_Simp___hyg_108_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_List_isEmpty___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCtxCore___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_108_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_5_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_SimpLemmas_addConst(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withoutModifyingState___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__1___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__2___closed__6; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_toString___at_Lean_resolveGlobalConstNoOverloadCore___spec__2(lean_object*); uint8_t l_Std_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__4(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_5____closed__7; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___boxed__const__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrLemma(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2180,7 +2180,7 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_25; lean_object* x_26; x_25 = lean_box(0); -x_26 = lean_apply_6(x_2, x_25, x_7, x_8, x_9, x_10, x_11); +x_26 = lean_apply_10(x_2, x_25, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_26; } else @@ -2210,7 +2210,8 @@ lean_inc(x_28); x_38 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_38, 0, x_28); lean_inc(x_10); -x_39 = lean_apply_6(x_2, x_38, x_7, x_8, x_9, x_10, x_37); +lean_inc(x_6); +x_39 = lean_apply_10(x_2, x_38, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_37); if (lean_obj_tag(x_39) == 0) { lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; @@ -2235,6 +2236,7 @@ x_48 = lean_ctor_get(x_47, 1); lean_inc(x_48); lean_dec(x_47); x_49 = lean_st_ref_set(x_6, x_45, x_48); +lean_dec(x_6); x_50 = !lean_is_exclusive(x_49); if (x_50 == 0) { @@ -2289,6 +2291,7 @@ x_65 = lean_ctor_get(x_64, 1); lean_inc(x_65); lean_dec(x_64); x_66 = lean_st_ref_set(x_6, x_62, x_65); +lean_dec(x_6); x_67 = !lean_is_exclusive(x_66); if (x_67 == 0) { @@ -2385,10 +2388,6 @@ _start: { lean_object* x_12; x_12 = l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); lean_dec(x_1); return x_12; } @@ -11626,133 +11625,7 @@ lean_dec(x_1); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___lambda__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; -x_12 = l_Lean_Meta_simpGoal(x_1, x_2, x_6, x_3, x_4, x_5, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = lean_box(0); -lean_ctor_set(x_12, 0, x_16); -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_12, 1); -lean_inc(x_17); -lean_dec(x_12); -x_18 = lean_box(0); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; -} -} -else -{ -uint8_t x_20; -x_20 = !lean_is_exclusive(x_12); -if (x_20 == 0) -{ -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_12, 0); -lean_dec(x_21); -x_22 = !lean_is_exclusive(x_13); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_13, 0); -x_24 = lean_ctor_get(x_23, 1); -lean_inc(x_24); -lean_dec(x_23); -lean_ctor_set(x_13, 0, x_24); -return x_12; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_13, 0); -lean_inc(x_25); -lean_dec(x_13); -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_12, 0, x_27); -return x_12; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_12, 1); -lean_inc(x_28); -lean_dec(x_12); -x_29 = lean_ctor_get(x_13, 0); -lean_inc(x_29); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_30 = x_13; -} else { - lean_dec_ref(x_13); - x_30 = lean_box(0); -} -x_31 = lean_ctor_get(x_29, 1); -lean_inc(x_31); -lean_dec(x_29); -if (lean_is_scalar(x_30)) { - x_32 = lean_alloc_ctor(1, 1, 0); -} else { - x_32 = x_30; -} -lean_ctor_set(x_32, 0, x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_28); -return x_33; -} -} -} -else -{ -uint8_t x_34; -x_34 = !lean_is_exclusive(x_12); -if (x_34 == 0) -{ -return x_12; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_12, 0); -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_12); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_go(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; @@ -11767,59 +11640,55 @@ lean_inc(x_6); x_15 = l_Lean_Elab_Tactic_getMainGoal(x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_16; lean_object* x_17; lean_object* x_18; x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); lean_dec(x_15); -x_18 = lean_box(x_4); -x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalSimp_go___lambda__1___boxed), 11, 5); -lean_closure_set(x_19, 0, x_16); -lean_closure_set(x_19, 1, x_1); -lean_closure_set(x_19, 2, x_18); -lean_closure_set(x_19, 3, x_3); -lean_closure_set(x_19, 4, x_5); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -x_20 = l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___rarg(x_2, x_19, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_17); -if (lean_obj_tag(x_20) == 0) +x_18 = l_Lean_Meta_simpGoal(x_16, x_1, x_2, x_4, x_3, x_5, x_10, x_11, x_12, x_13, x_17); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_21; -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_dec(x_20); -x_23 = lean_box(0); -x_24 = l_Lean_Elab_Tactic_replaceMainGoal(x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_22); -return x_24; +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_box(0); +x_22 = l_Lean_Elab_Tactic_replaceMainGoal(x_21, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_20); +return x_22; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = lean_ctor_get(x_20, 1); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_23 = lean_ctor_get(x_19, 0); +lean_inc(x_23); +lean_dec(x_19); +x_24 = lean_ctor_get(x_18, 1); +lean_inc(x_24); +lean_dec(x_18); +x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); -lean_dec(x_20); -x_26 = lean_ctor_get(x_21, 0); -lean_inc(x_26); -lean_dec(x_21); -x_27 = lean_box(0); -x_28 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set(x_28, 1, x_27); -x_29 = l_Lean_Elab_Tactic_replaceMainGoal(x_28, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_25); -return x_29; +lean_dec(x_23); +x_26 = lean_box(0); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +x_28 = l_Lean_Elab_Tactic_replaceMainGoal(x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_24); +return x_28; } } else { -uint8_t x_30; +uint8_t x_29; lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -11828,29 +11697,29 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -x_30 = !lean_is_exclusive(x_20); -if (x_30 == 0) +x_29 = !lean_is_exclusive(x_18); +if (x_29 == 0) { -return x_20; +return x_18; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_20, 0); -x_32 = lean_ctor_get(x_20, 1); -lean_inc(x_32); +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_18, 0); +x_31 = lean_ctor_get(x_18, 1); lean_inc(x_31); -lean_dec(x_20); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; +lean_inc(x_30); +lean_dec(x_18); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; } } } else { -uint8_t x_34; +uint8_t x_33; lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -11861,50 +11730,40 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); -x_34 = !lean_is_exclusive(x_15); -if (x_34 == 0) +x_33 = !lean_is_exclusive(x_15); +if (x_33 == 0) { return x_15; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_15, 0); -x_36 = lean_ctor_get(x_15, 1); -lean_inc(x_36); +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_15, 0); +x_35 = lean_ctor_get(x_15, 1); lean_inc(x_35); +lean_inc(x_34); lean_dec(x_15); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -uint8_t x_12; lean_object* x_13; -x_12 = lean_unbox(x_3); -lean_dec(x_3); -x_13 = l_Lean_Elab_Tactic_evalSimp_go___lambda__1(x_1, x_2, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp_go___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_go___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { uint8_t x_15; lean_object* x_16; x_15 = lean_unbox(x_4); lean_dec(x_4); -x_16 = l_Lean_Elab_Tactic_evalSimp_go(x_1, x_2, x_3, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_2); +x_16 = l_Lean_Elab_Tactic_simpLocation_go(x_1, x_2, x_3, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); return x_16; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { uint8_t x_13; @@ -11974,7 +11833,7 @@ return x_32; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; @@ -12009,7 +11868,7 @@ x_18 = lean_ctor_get(x_16, 1); lean_inc(x_18); lean_dec(x_16); x_19 = 1; -x_20 = l_Lean_Elab_Tactic_evalSimp_go(x_1, x_2, x_17, x_19, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_18); +x_20 = l_Lean_Elab_Tactic_simpLocation_go(x_1, x_2, x_17, x_19, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_18); return x_20; } else @@ -12024,6 +11883,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); x_21 = !lean_is_exclusive(x_16); if (x_21 == 0) @@ -12057,6 +11917,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); x_25 = !lean_is_exclusive(x_13); if (x_25 == 0) @@ -12079,7 +11940,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; lean_object* x_16; @@ -12101,7 +11962,7 @@ lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); lean_inc(x_18); lean_dec(x_16); -x_19 = l_Lean_Elab_Tactic_evalSimp_go(x_2, x_3, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_18); +x_19 = l_Lean_Elab_Tactic_simpLocation_go(x_2, x_3, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_18); return x_19; } else @@ -12116,6 +11977,7 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); +lean_dec(x_3); lean_dec(x_2); x_20 = !lean_is_exclusive(x_16); if (x_20 == 0) @@ -12138,7 +12000,7 @@ return x_23; } } } -static lean_object* _init_l_Lean_Elab_Tactic_evalSimp___boxed__const__1() { +static lean_object* _init_l_Lean_Elab_Tactic_simpLocation___boxed__const__1() { _start: { size_t x_1; lean_object* x_2; @@ -12147,6 +12009,89 @@ x_2 = lean_box_usize(x_1); return x_2; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_simpLocation___lambda__1), 12, 3); +lean_closure_set(x_14, 0, x_1); +lean_closure_set(x_14, 1, x_2); +lean_closure_set(x_14, 2, x_3); +x_15 = l_Lean_Elab_Tactic_withMainContext___rarg(x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_15; +} +else +{ +lean_object* x_16; uint8_t x_17; lean_object* x_18; size_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_16 = lean_ctor_get(x_4, 0); +lean_inc(x_16); +x_17 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); +lean_dec(x_4); +x_18 = lean_array_get_size(x_16); +x_19 = lean_usize_of_nat(x_18); +lean_dec(x_18); +x_20 = x_16; +x_21 = lean_box_usize(x_19); +x_22 = l_Lean_Elab_Tactic_simpLocation___boxed__const__1; +x_23 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1___boxed), 12, 3); +lean_closure_set(x_23, 0, x_21); +lean_closure_set(x_23, 1, x_22); +lean_closure_set(x_23, 2, x_20); +x_24 = lean_box(x_17); +x_25 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_simpLocation___lambda__2___boxed), 14, 5); +lean_closure_set(x_25, 0, x_23); +lean_closure_set(x_25, 1, x_1); +lean_closure_set(x_25, 2, x_2); +lean_closure_set(x_25, 3, x_24); +lean_closure_set(x_25, 4, x_3); +x_26 = l_Lean_Elab_Tactic_withMainContext___rarg(x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_26; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +size_t x_13; size_t x_14; lean_object* x_15; +x_13 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_14 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_simpLocation___spec__1(x_13, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_4); +lean_dec(x_4); +x_16 = l_Lean_Elab_Tactic_simpLocation___lambda__2(x_1, x_2, x_3, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_unsigned_to_nat(5u); +x_15 = l_Lean_Syntax_getArg(x_1, x_14); +x_16 = l_Lean_Elab_Tactic_expandOptLocation(x_15); +lean_dec(x_15); +x_17 = l_Lean_Elab_Tactic_simpLocation(x_2, x_4, x_3, x_16, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_17; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { @@ -12172,7 +12117,7 @@ lean_inc(x_2); x_16 = l_Lean_Elab_Tactic_withMainContext___rarg(x_15, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); if (lean_obj_tag(x_16) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -12185,52 +12130,17 @@ lean_inc(x_20); x_21 = lean_ctor_get(x_17, 2); lean_inc(x_21); lean_dec(x_17); -x_22 = lean_unsigned_to_nat(5u); -x_23 = l_Lean_Syntax_getArg(x_1, x_22); -lean_dec(x_1); -x_24 = l_Lean_Elab_Tactic_expandOptLocation(x_23); -lean_dec(x_23); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed), 12, 3); -lean_closure_set(x_25, 0, x_19); -lean_closure_set(x_25, 1, x_20); -lean_closure_set(x_25, 2, x_21); -x_26 = l_Lean_Elab_Tactic_withMainContext___rarg(x_25, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18); -return x_26; +x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed), 13, 3); +lean_closure_set(x_22, 0, x_1); +lean_closure_set(x_22, 1, x_19); +lean_closure_set(x_22, 2, x_21); +x_23 = l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___rarg(x_20, x_22, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18); +lean_dec(x_20); +return x_23; } else { -lean_object* x_27; uint8_t x_28; lean_object* x_29; size_t x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_27 = lean_ctor_get(x_24, 0); -lean_inc(x_27); -x_28 = lean_ctor_get_uint8(x_24, sizeof(void*)*1); -lean_dec(x_24); -x_29 = lean_array_get_size(x_27); -x_30 = lean_usize_of_nat(x_29); -lean_dec(x_29); -x_31 = x_27; -x_32 = lean_box_usize(x_30); -x_33 = l_Lean_Elab_Tactic_evalSimp___boxed__const__1; -x_34 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1___boxed), 12, 3); -lean_closure_set(x_34, 0, x_32); -lean_closure_set(x_34, 1, x_33); -lean_closure_set(x_34, 2, x_31); -x_35 = lean_box(x_28); -x_36 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalSimp___lambda__2___boxed), 14, 5); -lean_closure_set(x_36, 0, x_34); -lean_closure_set(x_36, 1, x_19); -lean_closure_set(x_36, 2, x_20); -lean_closure_set(x_36, 3, x_35); -lean_closure_set(x_36, 4, x_21); -x_37 = l_Lean_Elab_Tactic_withMainContext___rarg(x_36, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18); -return x_37; -} -} -else -{ -uint8_t x_38; +uint8_t x_24; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -12240,64 +12150,34 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_38 = !lean_is_exclusive(x_16); -if (x_38 == 0) +x_24 = !lean_is_exclusive(x_16); +if (x_24 == 0) { return x_16; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_16, 0); -x_40 = lean_ctor_get(x_16, 1); -lean_inc(x_40); -lean_inc(x_39); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_16, 0); +x_26 = lean_ctor_get(x_16, 1); +lean_inc(x_26); +lean_inc(x_25); lean_dec(x_16); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; } } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -size_t x_13; size_t x_14; lean_object* x_15; -x_13 = lean_unbox_usize(x_1); +lean_object* x_14; +x_14 = l_Lean_Elab_Tactic_evalSimp___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_1); -x_14 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalSimp___spec__1(x_13, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = l_Lean_Elab_Tactic_evalSimp___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_2); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -uint8_t x_15; lean_object* x_16; -x_15 = lean_unbox(x_4); -lean_dec(x_4); -x_16 = l_Lean_Elab_Tactic_evalSimp___lambda__2(x_1, x_2, x_3, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_3); -return x_16; +return x_14; } } static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__1() { @@ -12829,8 +12709,8 @@ l_Lean_Elab_Tactic_mkSimpContext___closed__1 = _init_l_Lean_Elab_Tactic_mkSimpCo lean_mark_persistent(l_Lean_Elab_Tactic_mkSimpContext___closed__1); l_Lean_Elab_Tactic_mkSimpContext___closed__2 = _init_l_Lean_Elab_Tactic_mkSimpContext___closed__2(); lean_mark_persistent(l_Lean_Elab_Tactic_mkSimpContext___closed__2); -l_Lean_Elab_Tactic_evalSimp___boxed__const__1 = _init_l_Lean_Elab_Tactic_evalSimp___boxed__const__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalSimp___boxed__const__1); +l_Lean_Elab_Tactic_simpLocation___boxed__const__1 = _init_l_Lean_Elab_Tactic_simpLocation___boxed__const__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_simpLocation___boxed__const__1); l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__1); l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__2 = _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/Split.c b/stage0/stdlib/Lean/Elab/Tactic/Split.c index bba07d09d2..4d9f93270d 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Split.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Split.c @@ -1095,7 +1095,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalSplit___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string("'split' tatic, term to split is not supported yet"); +x_1 = lean_mk_string("'split' tactic, term to split is not supported yet"); return x_1; } } diff --git a/stage0/stdlib/Lean/Elab/Term.c b/stage0/stdlib/Lean/Elab/Term.c index c3cf57a524..b8e76c00cd 100644 --- a/stage0/stdlib/Lean/Elab/Term.c +++ b/stage0/stdlib/Lean/Elab/Term.c @@ -252,10 +252,10 @@ static lean_object* l_Lean_Elab_Term_resolveId_x3f___lambda__2___closed__1; uint64_t l_Lean_Level_hash(lean_object*); LEAN_EXPORT lean_object* l_ReaderT_map___at_Lean_Elab_Term_instMetaEvalTermElabM___spec__7___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isMonad_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isNoImplicitLambda___closed__2; lean_object* lean_local_ctx_find_from_user_name(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_getMVarDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__12; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -284,7 +284,6 @@ static lean_object* l_Lean_Elab_Term_termElabAttribute___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Term_TermElabM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMonadQuotationTermElabM___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Term_applyAttributesAt(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__5(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instToStringMVarErrorKind(lean_object*); @@ -294,6 +293,7 @@ static lean_object* l_Lean_Elab_Term_instMonadMacroAdapterTermElabM___closed__3; lean_object* l_Lean_Elab_Level_elabLevel(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkAuxName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2; lean_object* l_Std_mkHashSetImp___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Declaration_foldExprM___at_Lean_Elab_Term_evalExpr___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___lambda__2___closed__2; @@ -583,6 +583,7 @@ lean_object* l_Lean_Syntax_identComponents(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withFreshMacroScope(lean_object*); static lean_object* l_Lean_Elab_Term_instMonadLogTermElabM___closed__5; static lean_object* l_Lean_addTrace___at___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTerm___spec__1___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerSyntheticMVarWithCurrRef___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_termElabAttribute___closed__3; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_tryLiftAndCoe___closed__4; @@ -603,7 +604,7 @@ lean_object* l_Lean_Meta_getDelayedAssignment_x3f(lean_object*, lean_object*, le lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_5254_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_5231_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038_(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkAuxName___at_Lean_Elab_Term_mkAuxName___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_setElabConfig(lean_object*); static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__14; @@ -628,7 +629,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_State_levelNames___default; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_synthesizeInst___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMonadBacktrackSavedStateTermElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_evalExpr___spec__8___lambda__1___boxed(lean_object*, lean_object*); uint8_t l_Array_contains___at_Lean_findField_x3f___spec__1(lean_object*, lean_object*); lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); @@ -676,7 +676,6 @@ static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__1___closed LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_mapMAux___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__13; -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2; static lean_object* l_Lean_Elab_Term_instInhabitedSavedState___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLevel___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MetavarContext_localDeclDependsOn(lean_object*, lean_object*, lean_object*); @@ -725,8 +724,10 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_addAutoBou lean_object* l_Lean_Core_checkMaxHeartbeats(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1; extern lean_object* l_Lean_Meta_instMonadMetaM; lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_mkConst___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName_process___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -774,7 +775,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAu uint8_t l_Lean_BinderInfo_isImplicit(uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_evalExpr___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__1___closed__4; -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkConst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_dropTermParens___closed__2; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_mkSomeContext___closed__2; @@ -1108,7 +1108,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_applyResult___rarg(lean_object*, lean_ lean_object* l_IO_println___at_Lean_instEval___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_throwErrorIfErrors(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006_(lean_object*); static lean_object* l_Lean_Elab_Term_termElabAttribute___closed__10; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_evalExpr___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_addAutoBoundImplicits(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -32673,11 +32673,8 @@ return x_7; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -32712,89 +32709,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -33189,7 +33228,7 @@ lean_dec(x_26); x_27 = !lean_is_exclusive(x_23); if (x_27 == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_41; lean_object* x_42; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; x_28 = lean_ctor_get(x_23, 0); lean_dec(x_28); x_29 = l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__3; @@ -33241,257 +33280,314 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); x_58 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_57, x_6, x_7, x_8, x_9, x_10, x_11, x_56); -if (lean_obj_tag(x_58) == 0) +x_33 = x_58; +goto block_48; +} +else { -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_58, 0); -lean_inc(x_59); -x_60 = lean_ctor_get(x_58, 1); +uint8_t x_59; +x_59 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_54, 1); lean_inc(x_60); -lean_dec(x_58); -x_33 = x_59; -x_34 = x_60; -goto block_40; -} -else -{ -lean_object* x_61; lean_object* x_62; -x_61 = lean_ctor_get(x_58, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_58, 1); -lean_inc(x_62); -lean_dec(x_58); -x_41 = x_61; -x_42 = x_62; -goto block_48; -} -} -else -{ -uint8_t x_63; -x_63 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_54, 1); -lean_inc(x_64); lean_dec(x_54); -x_65 = lean_box(0); +x_61 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_66 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_65, x_6, x_7, x_8, x_9, x_10, x_11, x_64); -if (lean_obj_tag(x_66) == 0) +x_62 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_61, x_6, x_7, x_8, x_9, x_10, x_11, x_60); +x_33 = x_62; +goto block_48; +} +else { -lean_object* x_67; lean_object* x_68; -x_67 = lean_ctor_get(x_66, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_66, 1); -lean_inc(x_68); -lean_dec(x_66); +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_54, 1); +lean_inc(x_63); +lean_dec(x_54); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_64 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_63); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_64, 1); +lean_inc(x_66); +lean_dec(x_64); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_67 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_65, x_6, x_7, x_8, x_9, x_10, x_11, x_66); x_33 = x_67; -x_34 = x_68; -goto block_40; +goto block_48; } else { -lean_object* x_69; lean_object* x_70; -x_69 = lean_ctor_get(x_66, 0); -lean_inc(x_69); -x_70 = lean_ctor_get(x_66, 1); +uint8_t x_68; +lean_dec(x_2); +lean_dec(x_1); +x_68 = !lean_is_exclusive(x_64); +if (x_68 == 0) +{ +x_33 = x_64; +goto block_48; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_64, 0); +x_70 = lean_ctor_get(x_64, 1); lean_inc(x_70); -lean_dec(x_66); -x_41 = x_69; -x_42 = x_70; -goto block_48; -} -} -else -{ -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_54, 1); -lean_inc(x_71); -lean_dec(x_54); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_72 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_71); -if (lean_obj_tag(x_72) == 0) -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_73 = lean_ctor_get(x_72, 0); -lean_inc(x_73); -x_74 = lean_ctor_get(x_72, 1); -lean_inc(x_74); -lean_dec(x_72); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_75 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_73, x_6, x_7, x_8, x_9, x_10, x_11, x_74); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = lean_ctor_get(x_75, 0); -lean_inc(x_76); -x_77 = lean_ctor_get(x_75, 1); -lean_inc(x_77); -lean_dec(x_75); -x_33 = x_76; -x_34 = x_77; -goto block_40; -} -else -{ -lean_object* x_78; lean_object* x_79; -x_78 = lean_ctor_get(x_75, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_75, 1); -lean_inc(x_79); -lean_dec(x_75); -x_41 = x_78; -x_42 = x_79; -goto block_48; -} -} -else -{ -lean_object* x_80; lean_object* x_81; -lean_dec(x_2); -lean_dec(x_1); -x_80 = lean_ctor_get(x_72, 0); -lean_inc(x_80); -x_81 = lean_ctor_get(x_72, 1); -lean_inc(x_81); -lean_dec(x_72); -x_41 = x_80; -x_42 = x_81; +lean_inc(x_69); +lean_dec(x_64); +x_71 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +x_33 = x_71; goto block_48; } } } } +} else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_82 = lean_ctor_get(x_55, 0); -lean_inc(x_82); +lean_object* x_72; lean_object* x_73; +x_72 = lean_ctor_get(x_55, 0); +lean_inc(x_72); lean_dec(x_55); -x_83 = lean_ctor_get(x_54, 1); -lean_inc(x_83); +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) +{ +lean_dec(x_73); +lean_dec(x_72); +if (x_4 == 0) +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_54, 1); +lean_inc(x_74); lean_dec(x_54); -x_84 = lean_ctor_get(x_82, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_82, 1); -lean_inc(x_85); -lean_dec(x_82); -x_86 = lean_box(x_3); -x_87 = lean_box(x_4); -lean_inc(x_2); -lean_inc(x_85); -x_88 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); -lean_closure_set(x_88, 0, x_85); -lean_closure_set(x_88, 1, x_2); -lean_closure_set(x_88, 2, x_86); -lean_closure_set(x_88, 3, x_87); -lean_inc(x_1); -x_89 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); -lean_closure_set(x_89, 0, x_1); -lean_closure_set(x_89, 1, x_85); -lean_closure_set(x_89, 2, x_88); -x_90 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); -lean_closure_set(x_90, 0, x_84); -lean_closure_set(x_90, 1, x_1); -lean_closure_set(x_90, 2, x_2); +x_75 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_91 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_89, x_90, x_6, x_7, x_8, x_9, x_10, x_11, x_83); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; -x_92 = lean_ctor_get(x_91, 0); -lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 1); -lean_inc(x_93); -lean_dec(x_91); -x_33 = x_92; -x_34 = x_93; -goto block_40; -} -else -{ -lean_object* x_94; lean_object* x_95; -x_94 = lean_ctor_get(x_91, 0); -lean_inc(x_94); -x_95 = lean_ctor_get(x_91, 1); -lean_inc(x_95); -lean_dec(x_91); -x_41 = x_94; -x_42 = x_95; +x_76 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_75, x_6, x_7, x_8, x_9, x_10, x_11, x_74); +x_33 = x_76; goto block_48; } -} +else +{ +uint8_t x_77; +x_77 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_54, 1); +lean_inc(x_78); +lean_dec(x_54); +x_79 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_80 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_79, x_6, x_7, x_8, x_9, x_10, x_11, x_78); +x_33 = x_80; +goto block_48; } else { -lean_object* x_96; lean_object* x_97; +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_54, 1); +lean_inc(x_81); +lean_dec(x_54); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_82 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_81); +if (lean_obj_tag(x_82) == 0) +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_82, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_82, 1); +lean_inc(x_84); +lean_dec(x_82); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_85 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_83, x_6, x_7, x_8, x_9, x_10, x_11, x_84); +x_33 = x_85; +goto block_48; +} +else +{ +uint8_t x_86; lean_dec(x_2); lean_dec(x_1); -x_96 = lean_ctor_get(x_54, 0); -lean_inc(x_96); -x_97 = lean_ctor_get(x_54, 1); -lean_inc(x_97); -lean_dec(x_54); -x_41 = x_96; -x_42 = x_97; +x_86 = !lean_is_exclusive(x_82); +if (x_86 == 0) +{ +x_33 = x_82; goto block_48; } -block_40: +else { -lean_object* x_35; uint8_t x_36; -x_35 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_32, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_34); +lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_87 = lean_ctor_get(x_82, 0); +x_88 = lean_ctor_get(x_82, 1); +lean_inc(x_88); +lean_inc(x_87); +lean_dec(x_82); +x_89 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_89, 0, x_87); +lean_ctor_set(x_89, 1, x_88); +x_33 = x_89; +goto block_48; +} +} +} +} +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_90 = lean_ctor_get(x_54, 1); +lean_inc(x_90); +lean_dec(x_54); +x_91 = lean_ctor_get(x_72, 0); +lean_inc(x_91); +lean_dec(x_72); +x_92 = lean_ctor_get(x_73, 0); +lean_inc(x_92); +lean_dec(x_73); +x_93 = lean_box(x_3); +x_94 = lean_box(x_4); +lean_inc(x_2); +lean_inc(x_92); +x_95 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); +lean_closure_set(x_95, 0, x_92); +lean_closure_set(x_95, 1, x_2); +lean_closure_set(x_95, 2, x_93); +lean_closure_set(x_95, 3, x_94); +lean_inc(x_1); +x_96 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); +lean_closure_set(x_96, 0, x_1); +lean_closure_set(x_96, 1, x_92); +lean_closure_set(x_96, 2, x_95); +x_97 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); +lean_closure_set(x_97, 0, x_91); +lean_closure_set(x_97, 1, x_1); +lean_closure_set(x_97, 2, x_2); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_98 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_96, x_97, x_6, x_7, x_8, x_9, x_10, x_11, x_90); +x_33 = x_98; +goto block_48; +} +} +} +else +{ +uint8_t x_99; +lean_dec(x_2); +lean_dec(x_1); +x_99 = !lean_is_exclusive(x_54); +if (x_99 == 0) +{ +x_33 = x_54; +goto block_48; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_100 = lean_ctor_get(x_54, 0); +x_101 = lean_ctor_get(x_54, 1); +lean_inc(x_101); +lean_inc(x_100); +lean_dec(x_54); +x_102 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_102, 0, x_100); +lean_ctor_set(x_102, 1, x_101); +x_33 = x_102; +goto block_48; +} +} +block_48: +{ +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_32, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_35); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -x_36 = !lean_is_exclusive(x_35); -if (x_36 == 0) +x_37 = !lean_is_exclusive(x_36); +if (x_37 == 0) { -lean_object* x_37; -x_37 = lean_ctor_get(x_35, 0); -lean_dec(x_37); -lean_ctor_set(x_35, 0, x_33); -return x_35; +lean_object* x_38; +x_38 = lean_ctor_get(x_36, 0); +lean_dec(x_38); +lean_ctor_set(x_36, 0, x_34); +return x_36; } else { -lean_object* x_38; lean_object* x_39; -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -lean_dec(x_35); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_33); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +lean_dec(x_36); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_34); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } -block_48: +else { -lean_object* x_43; uint8_t x_44; +lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_41 = lean_ctor_get(x_33, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_33, 1); +lean_inc(x_42); +lean_dec(x_33); x_43 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_32, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_42); lean_dec(x_11); lean_dec(x_10); @@ -33522,700 +33618,823 @@ return x_47; } } } +} else { -uint8_t x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_111; lean_object* x_112; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; -x_98 = lean_ctor_get_uint8(x_23, sizeof(void*)*1); +uint8_t x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_103 = lean_ctor_get_uint8(x_23, sizeof(void*)*1); lean_dec(x_23); -x_99 = l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__3; -x_100 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_100, 0, x_99); -lean_ctor_set_uint8(x_100, sizeof(void*)*1, x_98); -lean_ctor_set(x_22, 3, x_100); -x_101 = lean_st_ref_set(x_11, x_22, x_24); -x_102 = lean_ctor_get(x_101, 1); -lean_inc(x_102); -lean_dec(x_101); -x_103 = lean_ctor_get(x_10, 3); -lean_inc(x_103); -x_118 = lean_st_ref_get(x_11, x_102); -x_119 = lean_ctor_get(x_118, 0); -lean_inc(x_119); -x_120 = lean_ctor_get(x_118, 1); -lean_inc(x_120); -lean_dec(x_118); -x_121 = lean_ctor_get(x_119, 0); -lean_inc(x_121); -lean_dec(x_119); -lean_inc(x_1); -x_122 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); -lean_closure_set(x_122, 0, x_121); -lean_closure_set(x_122, 1, x_1); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_123 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2(x_122, x_6, x_7, x_8, x_9, x_10, x_11, x_120); -if (lean_obj_tag(x_123) == 0) -{ -lean_object* x_124; +x_104 = l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__3; +x_105 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set_uint8(x_105, sizeof(void*)*1, x_103); +lean_ctor_set(x_22, 3, x_105); +x_106 = lean_st_ref_set(x_11, x_22, x_24); +x_107 = lean_ctor_get(x_106, 1); +lean_inc(x_107); +lean_dec(x_106); +x_108 = lean_ctor_get(x_10, 3); +lean_inc(x_108); +x_123 = lean_st_ref_get(x_11, x_107); x_124 = lean_ctor_get(x_123, 0); lean_inc(x_124); -if (lean_obj_tag(x_124) == 0) -{ -if (x_4 == 0) -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; x_125 = lean_ctor_get(x_123, 1); lean_inc(x_125); lean_dec(x_123); -x_126 = lean_box(0); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_127 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_126, x_6, x_7, x_8, x_9, x_10, x_11, x_125); -if (lean_obj_tag(x_127) == 0) -{ -lean_object* x_128; lean_object* x_129; -x_128 = lean_ctor_get(x_127, 0); -lean_inc(x_128); -x_129 = lean_ctor_get(x_127, 1); -lean_inc(x_129); -lean_dec(x_127); -x_104 = x_128; -x_105 = x_129; -goto block_110; -} -else -{ -lean_object* x_130; lean_object* x_131; -x_130 = lean_ctor_get(x_127, 0); -lean_inc(x_130); -x_131 = lean_ctor_get(x_127, 1); -lean_inc(x_131); -lean_dec(x_127); -x_111 = x_130; -x_112 = x_131; -goto block_117; -} -} -else -{ -uint8_t x_132; -x_132 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); -if (x_132 == 0) -{ -lean_object* x_133; lean_object* x_134; lean_object* x_135; -x_133 = lean_ctor_get(x_123, 1); -lean_inc(x_133); -lean_dec(x_123); -x_134 = lean_box(0); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_135 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_134, x_6, x_7, x_8, x_9, x_10, x_11, x_133); -if (lean_obj_tag(x_135) == 0) -{ -lean_object* x_136; lean_object* x_137; -x_136 = lean_ctor_get(x_135, 0); -lean_inc(x_136); -x_137 = lean_ctor_get(x_135, 1); -lean_inc(x_137); -lean_dec(x_135); -x_104 = x_136; -x_105 = x_137; -goto block_110; -} -else -{ -lean_object* x_138; lean_object* x_139; -x_138 = lean_ctor_get(x_135, 0); -lean_inc(x_138); -x_139 = lean_ctor_get(x_135, 1); -lean_inc(x_139); -lean_dec(x_135); -x_111 = x_138; -x_112 = x_139; -goto block_117; -} -} -else -{ -lean_object* x_140; lean_object* x_141; -x_140 = lean_ctor_get(x_123, 1); -lean_inc(x_140); -lean_dec(x_123); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_141 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_140); -if (lean_obj_tag(x_141) == 0) -{ -lean_object* x_142; lean_object* x_143; lean_object* x_144; -x_142 = lean_ctor_get(x_141, 0); -lean_inc(x_142); -x_143 = lean_ctor_get(x_141, 1); -lean_inc(x_143); -lean_dec(x_141); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_144 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_142, x_6, x_7, x_8, x_9, x_10, x_11, x_143); -if (lean_obj_tag(x_144) == 0) -{ -lean_object* x_145; lean_object* x_146; -x_145 = lean_ctor_get(x_144, 0); -lean_inc(x_145); -x_146 = lean_ctor_get(x_144, 1); -lean_inc(x_146); -lean_dec(x_144); -x_104 = x_145; -x_105 = x_146; -goto block_110; -} -else -{ -lean_object* x_147; lean_object* x_148; -x_147 = lean_ctor_get(x_144, 0); -lean_inc(x_147); -x_148 = lean_ctor_get(x_144, 1); -lean_inc(x_148); -lean_dec(x_144); -x_111 = x_147; -x_112 = x_148; -goto block_117; -} -} -else -{ -lean_object* x_149; lean_object* x_150; -lean_dec(x_2); -lean_dec(x_1); -x_149 = lean_ctor_get(x_141, 0); -lean_inc(x_149); -x_150 = lean_ctor_get(x_141, 1); -lean_inc(x_150); -lean_dec(x_141); -x_111 = x_149; -x_112 = x_150; -goto block_117; -} -} -} -} -else -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; -x_151 = lean_ctor_get(x_124, 0); -lean_inc(x_151); +x_126 = lean_ctor_get(x_124, 0); +lean_inc(x_126); lean_dec(x_124); -x_152 = lean_ctor_get(x_123, 1); -lean_inc(x_152); -lean_dec(x_123); -x_153 = lean_ctor_get(x_151, 0); -lean_inc(x_153); -x_154 = lean_ctor_get(x_151, 1); -lean_inc(x_154); -lean_dec(x_151); -x_155 = lean_box(x_3); -x_156 = lean_box(x_4); -lean_inc(x_2); -lean_inc(x_154); -x_157 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); -lean_closure_set(x_157, 0, x_154); -lean_closure_set(x_157, 1, x_2); -lean_closure_set(x_157, 2, x_155); -lean_closure_set(x_157, 3, x_156); lean_inc(x_1); -x_158 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); -lean_closure_set(x_158, 0, x_1); -lean_closure_set(x_158, 1, x_154); -lean_closure_set(x_158, 2, x_157); -x_159 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); -lean_closure_set(x_159, 0, x_153); -lean_closure_set(x_159, 1, x_1); -lean_closure_set(x_159, 2, x_2); +x_127 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); +lean_closure_set(x_127, 0, x_126); +lean_closure_set(x_127, 1, x_1); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_160 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_158, x_159, x_6, x_7, x_8, x_9, x_10, x_11, x_152); -if (lean_obj_tag(x_160) == 0) +x_128 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2(x_127, x_6, x_7, x_8, x_9, x_10, x_11, x_125); +if (lean_obj_tag(x_128) == 0) { -lean_object* x_161; lean_object* x_162; -x_161 = lean_ctor_get(x_160, 0); -lean_inc(x_161); -x_162 = lean_ctor_get(x_160, 1); -lean_inc(x_162); -lean_dec(x_160); -x_104 = x_161; -x_105 = x_162; -goto block_110; -} -else -{ -lean_object* x_163; lean_object* x_164; -x_163 = lean_ctor_get(x_160, 0); -lean_inc(x_163); -x_164 = lean_ctor_get(x_160, 1); -lean_inc(x_164); -lean_dec(x_160); -x_111 = x_163; -x_112 = x_164; -goto block_117; -} -} -} -else -{ -lean_object* x_165; lean_object* x_166; -lean_dec(x_2); -lean_dec(x_1); -x_165 = lean_ctor_get(x_123, 0); -lean_inc(x_165); -x_166 = lean_ctor_get(x_123, 1); -lean_inc(x_166); -lean_dec(x_123); -x_111 = x_165; -x_112 = x_166; -goto block_117; -} -block_110: -{ -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_106 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_103, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_105); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_107 = lean_ctor_get(x_106, 1); -lean_inc(x_107); -if (lean_is_exclusive(x_106)) { - lean_ctor_release(x_106, 0); - lean_ctor_release(x_106, 1); - x_108 = x_106; -} else { - lean_dec_ref(x_106); - x_108 = lean_box(0); -} -if (lean_is_scalar(x_108)) { - x_109 = lean_alloc_ctor(0, 2, 0); -} else { - x_109 = x_108; -} -lean_ctor_set(x_109, 0, x_104); -lean_ctor_set(x_109, 1, x_107); -return x_109; -} -block_117: -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_103, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_112); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -if (lean_is_exclusive(x_113)) { - lean_ctor_release(x_113, 0); - lean_ctor_release(x_113, 1); - x_115 = x_113; -} else { - lean_dec_ref(x_113); - x_115 = lean_box(0); -} -if (lean_is_scalar(x_115)) { - x_116 = lean_alloc_ctor(1, 2, 0); -} else { - x_116 = x_115; - lean_ctor_set_tag(x_116, 1); -} -lean_ctor_set(x_116, 0, x_111); -lean_ctor_set(x_116, 1, x_114); -return x_116; -} -} -} -else -{ -lean_object* x_167; lean_object* x_168; lean_object* x_169; uint8_t x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_185; lean_object* x_186; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; -x_167 = lean_ctor_get(x_22, 0); -x_168 = lean_ctor_get(x_22, 1); -x_169 = lean_ctor_get(x_22, 2); -lean_inc(x_169); -lean_inc(x_168); -lean_inc(x_167); -lean_dec(x_22); -x_170 = lean_ctor_get_uint8(x_23, sizeof(void*)*1); -if (lean_is_exclusive(x_23)) { - lean_ctor_release(x_23, 0); - x_171 = x_23; -} else { - lean_dec_ref(x_23); - x_171 = lean_box(0); -} -x_172 = l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__3; -if (lean_is_scalar(x_171)) { - x_173 = lean_alloc_ctor(0, 1, 1); -} else { - x_173 = x_171; -} -lean_ctor_set(x_173, 0, x_172); -lean_ctor_set_uint8(x_173, sizeof(void*)*1, x_170); -x_174 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_174, 0, x_167); -lean_ctor_set(x_174, 1, x_168); -lean_ctor_set(x_174, 2, x_169); -lean_ctor_set(x_174, 3, x_173); -x_175 = lean_st_ref_set(x_11, x_174, x_24); -x_176 = lean_ctor_get(x_175, 1); -lean_inc(x_176); -lean_dec(x_175); -x_177 = lean_ctor_get(x_10, 3); -lean_inc(x_177); -x_192 = lean_st_ref_get(x_11, x_176); -x_193 = lean_ctor_get(x_192, 0); -lean_inc(x_193); -x_194 = lean_ctor_get(x_192, 1); -lean_inc(x_194); -lean_dec(x_192); -x_195 = lean_ctor_get(x_193, 0); -lean_inc(x_195); -lean_dec(x_193); -lean_inc(x_1); -x_196 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); -lean_closure_set(x_196, 0, x_195); -lean_closure_set(x_196, 1, x_1); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_197 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2(x_196, x_6, x_7, x_8, x_9, x_10, x_11, x_194); -if (lean_obj_tag(x_197) == 0) -{ -lean_object* x_198; -x_198 = lean_ctor_get(x_197, 0); -lean_inc(x_198); -if (lean_obj_tag(x_198) == 0) +lean_object* x_129; +x_129 = lean_ctor_get(x_128, 0); +lean_inc(x_129); +if (lean_obj_tag(x_129) == 0) { if (x_4 == 0) { -lean_object* x_199; lean_object* x_200; lean_object* x_201; -x_199 = lean_ctor_get(x_197, 1); -lean_inc(x_199); -lean_dec(x_197); -x_200 = lean_box(0); +lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_130 = lean_ctor_get(x_128, 1); +lean_inc(x_130); +lean_dec(x_128); +x_131 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_201 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_200, x_6, x_7, x_8, x_9, x_10, x_11, x_199); -if (lean_obj_tag(x_201) == 0) +x_132 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_131, x_6, x_7, x_8, x_9, x_10, x_11, x_130); +x_109 = x_132; +goto block_122; +} +else { -lean_object* x_202; lean_object* x_203; -x_202 = lean_ctor_get(x_201, 0); -lean_inc(x_202); -x_203 = lean_ctor_get(x_201, 1); +uint8_t x_133; +x_133 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_133 == 0) +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_134 = lean_ctor_get(x_128, 1); +lean_inc(x_134); +lean_dec(x_128); +x_135 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_136 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_135, x_6, x_7, x_8, x_9, x_10, x_11, x_134); +x_109 = x_136; +goto block_122; +} +else +{ +lean_object* x_137; lean_object* x_138; +x_137 = lean_ctor_get(x_128, 1); +lean_inc(x_137); +lean_dec(x_128); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_138 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_137); +if (lean_obj_tag(x_138) == 0) +{ +lean_object* x_139; lean_object* x_140; lean_object* x_141; +x_139 = lean_ctor_get(x_138, 0); +lean_inc(x_139); +x_140 = lean_ctor_get(x_138, 1); +lean_inc(x_140); +lean_dec(x_138); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_141 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_139, x_6, x_7, x_8, x_9, x_10, x_11, x_140); +x_109 = x_141; +goto block_122; +} +else +{ +lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; +lean_dec(x_2); +lean_dec(x_1); +x_142 = lean_ctor_get(x_138, 0); +lean_inc(x_142); +x_143 = lean_ctor_get(x_138, 1); +lean_inc(x_143); +if (lean_is_exclusive(x_138)) { + lean_ctor_release(x_138, 0); + lean_ctor_release(x_138, 1); + x_144 = x_138; +} else { + lean_dec_ref(x_138); + x_144 = lean_box(0); +} +if (lean_is_scalar(x_144)) { + x_145 = lean_alloc_ctor(1, 2, 0); +} else { + x_145 = x_144; +} +lean_ctor_set(x_145, 0, x_142); +lean_ctor_set(x_145, 1, x_143); +x_109 = x_145; +goto block_122; +} +} +} +} +else +{ +lean_object* x_146; lean_object* x_147; +x_146 = lean_ctor_get(x_129, 0); +lean_inc(x_146); +lean_dec(x_129); +x_147 = lean_ctor_get(x_146, 1); +lean_inc(x_147); +if (lean_obj_tag(x_147) == 0) +{ +lean_dec(x_147); +lean_dec(x_146); +if (x_4 == 0) +{ +lean_object* x_148; lean_object* x_149; lean_object* x_150; +x_148 = lean_ctor_get(x_128, 1); +lean_inc(x_148); +lean_dec(x_128); +x_149 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_150 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_149, x_6, x_7, x_8, x_9, x_10, x_11, x_148); +x_109 = x_150; +goto block_122; +} +else +{ +uint8_t x_151; +x_151 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_151 == 0) +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_152 = lean_ctor_get(x_128, 1); +lean_inc(x_152); +lean_dec(x_128); +x_153 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_154 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_153, x_6, x_7, x_8, x_9, x_10, x_11, x_152); +x_109 = x_154; +goto block_122; +} +else +{ +lean_object* x_155; lean_object* x_156; +x_155 = lean_ctor_get(x_128, 1); +lean_inc(x_155); +lean_dec(x_128); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_156 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_155); +if (lean_obj_tag(x_156) == 0) +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; +x_157 = lean_ctor_get(x_156, 0); +lean_inc(x_157); +x_158 = lean_ctor_get(x_156, 1); +lean_inc(x_158); +lean_dec(x_156); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_159 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_157, x_6, x_7, x_8, x_9, x_10, x_11, x_158); +x_109 = x_159; +goto block_122; +} +else +{ +lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; +lean_dec(x_2); +lean_dec(x_1); +x_160 = lean_ctor_get(x_156, 0); +lean_inc(x_160); +x_161 = lean_ctor_get(x_156, 1); +lean_inc(x_161); +if (lean_is_exclusive(x_156)) { + lean_ctor_release(x_156, 0); + lean_ctor_release(x_156, 1); + x_162 = x_156; +} else { + lean_dec_ref(x_156); + x_162 = lean_box(0); +} +if (lean_is_scalar(x_162)) { + x_163 = lean_alloc_ctor(1, 2, 0); +} else { + x_163 = x_162; +} +lean_ctor_set(x_163, 0, x_160); +lean_ctor_set(x_163, 1, x_161); +x_109 = x_163; +goto block_122; +} +} +} +} +else +{ +lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; +x_164 = lean_ctor_get(x_128, 1); +lean_inc(x_164); +lean_dec(x_128); +x_165 = lean_ctor_get(x_146, 0); +lean_inc(x_165); +lean_dec(x_146); +x_166 = lean_ctor_get(x_147, 0); +lean_inc(x_166); +lean_dec(x_147); +x_167 = lean_box(x_3); +x_168 = lean_box(x_4); +lean_inc(x_2); +lean_inc(x_166); +x_169 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); +lean_closure_set(x_169, 0, x_166); +lean_closure_set(x_169, 1, x_2); +lean_closure_set(x_169, 2, x_167); +lean_closure_set(x_169, 3, x_168); +lean_inc(x_1); +x_170 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); +lean_closure_set(x_170, 0, x_1); +lean_closure_set(x_170, 1, x_166); +lean_closure_set(x_170, 2, x_169); +x_171 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); +lean_closure_set(x_171, 0, x_165); +lean_closure_set(x_171, 1, x_1); +lean_closure_set(x_171, 2, x_2); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_172 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_170, x_171, x_6, x_7, x_8, x_9, x_10, x_11, x_164); +x_109 = x_172; +goto block_122; +} +} +} +else +{ +lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; +lean_dec(x_2); +lean_dec(x_1); +x_173 = lean_ctor_get(x_128, 0); +lean_inc(x_173); +x_174 = lean_ctor_get(x_128, 1); +lean_inc(x_174); +if (lean_is_exclusive(x_128)) { + lean_ctor_release(x_128, 0); + lean_ctor_release(x_128, 1); + x_175 = x_128; +} else { + lean_dec_ref(x_128); + x_175 = lean_box(0); +} +if (lean_is_scalar(x_175)) { + x_176 = lean_alloc_ctor(1, 2, 0); +} else { + x_176 = x_175; +} +lean_ctor_set(x_176, 0, x_173); +lean_ctor_set(x_176, 1, x_174); +x_109 = x_176; +goto block_122; +} +block_122: +{ +if (lean_obj_tag(x_109) == 0) +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_110 = lean_ctor_get(x_109, 0); +lean_inc(x_110); +x_111 = lean_ctor_get(x_109, 1); +lean_inc(x_111); +lean_dec(x_109); +x_112 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_108, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_111); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_113 = lean_ctor_get(x_112, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_112)) { + lean_ctor_release(x_112, 0); + lean_ctor_release(x_112, 1); + x_114 = x_112; +} else { + lean_dec_ref(x_112); + x_114 = lean_box(0); +} +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_114; +} +lean_ctor_set(x_115, 0, x_110); +lean_ctor_set(x_115, 1, x_113); +return x_115; +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_116 = lean_ctor_get(x_109, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_109, 1); +lean_inc(x_117); +lean_dec(x_109); +x_118 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_108, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_117); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_119 = lean_ctor_get(x_118, 1); +lean_inc(x_119); +if (lean_is_exclusive(x_118)) { + lean_ctor_release(x_118, 0); + lean_ctor_release(x_118, 1); + x_120 = x_118; +} else { + lean_dec_ref(x_118); + x_120 = lean_box(0); +} +if (lean_is_scalar(x_120)) { + x_121 = lean_alloc_ctor(1, 2, 0); +} else { + x_121 = x_120; + lean_ctor_set_tag(x_121, 1); +} +lean_ctor_set(x_121, 0, x_116); +lean_ctor_set(x_121, 1, x_119); +return x_121; +} +} +} +} +else +{ +lean_object* x_177; lean_object* x_178; lean_object* x_179; uint8_t x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; +x_177 = lean_ctor_get(x_22, 0); +x_178 = lean_ctor_get(x_22, 1); +x_179 = lean_ctor_get(x_22, 2); +lean_inc(x_179); +lean_inc(x_178); +lean_inc(x_177); +lean_dec(x_22); +x_180 = lean_ctor_get_uint8(x_23, sizeof(void*)*1); +if (lean_is_exclusive(x_23)) { + lean_ctor_release(x_23, 0); + x_181 = x_23; +} else { + lean_dec_ref(x_23); + x_181 = lean_box(0); +} +x_182 = l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__3; +if (lean_is_scalar(x_181)) { + x_183 = lean_alloc_ctor(0, 1, 1); +} else { + x_183 = x_181; +} +lean_ctor_set(x_183, 0, x_182); +lean_ctor_set_uint8(x_183, sizeof(void*)*1, x_180); +x_184 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_184, 0, x_177); +lean_ctor_set(x_184, 1, x_178); +lean_ctor_set(x_184, 2, x_179); +lean_ctor_set(x_184, 3, x_183); +x_185 = lean_st_ref_set(x_11, x_184, x_24); +x_186 = lean_ctor_get(x_185, 1); +lean_inc(x_186); +lean_dec(x_185); +x_187 = lean_ctor_get(x_10, 3); +lean_inc(x_187); +x_202 = lean_st_ref_get(x_11, x_186); +x_203 = lean_ctor_get(x_202, 0); lean_inc(x_203); -lean_dec(x_201); -x_178 = x_202; -x_179 = x_203; -goto block_184; -} -else -{ -lean_object* x_204; lean_object* x_205; -x_204 = lean_ctor_get(x_201, 0); +x_204 = lean_ctor_get(x_202, 1); lean_inc(x_204); -x_205 = lean_ctor_get(x_201, 1); +lean_dec(x_202); +x_205 = lean_ctor_get(x_203, 0); lean_inc(x_205); -lean_dec(x_201); -x_185 = x_204; -x_186 = x_205; -goto block_191; -} -} -else -{ -uint8_t x_206; -x_206 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); -if (x_206 == 0) -{ -lean_object* x_207; lean_object* x_208; lean_object* x_209; -x_207 = lean_ctor_get(x_197, 1); -lean_inc(x_207); -lean_dec(x_197); -x_208 = lean_box(0); +lean_dec(x_203); +lean_inc(x_1); +x_206 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); +lean_closure_set(x_206, 0, x_205); +lean_closure_set(x_206, 1, x_1); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_209 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_208, x_6, x_7, x_8, x_9, x_10, x_11, x_207); -if (lean_obj_tag(x_209) == 0) +x_207 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2(x_206, x_6, x_7, x_8, x_9, x_10, x_11, x_204); +if (lean_obj_tag(x_207) == 0) { -lean_object* x_210; lean_object* x_211; -x_210 = lean_ctor_get(x_209, 0); -lean_inc(x_210); -x_211 = lean_ctor_get(x_209, 1); -lean_inc(x_211); -lean_dec(x_209); -x_178 = x_210; -x_179 = x_211; -goto block_184; +lean_object* x_208; +x_208 = lean_ctor_get(x_207, 0); +lean_inc(x_208); +if (lean_obj_tag(x_208) == 0) +{ +if (x_4 == 0) +{ +lean_object* x_209; lean_object* x_210; lean_object* x_211; +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +lean_dec(x_207); +x_210 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_211 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_210, x_6, x_7, x_8, x_9, x_10, x_11, x_209); +x_188 = x_211; +goto block_201; } else { -lean_object* x_212; lean_object* x_213; -x_212 = lean_ctor_get(x_209, 0); -lean_inc(x_212); -x_213 = lean_ctor_get(x_209, 1); +uint8_t x_212; +x_212 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_212 == 0) +{ +lean_object* x_213; lean_object* x_214; lean_object* x_215; +x_213 = lean_ctor_get(x_207, 1); lean_inc(x_213); -lean_dec(x_209); -x_185 = x_212; -x_186 = x_213; -goto block_191; -} -} -else -{ -lean_object* x_214; lean_object* x_215; -x_214 = lean_ctor_get(x_197, 1); -lean_inc(x_214); -lean_dec(x_197); +lean_dec(x_207); +x_214 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_2); -lean_inc(x_1); -x_215 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_214); -if (lean_obj_tag(x_215) == 0) +lean_inc(x_7); +lean_inc(x_6); +x_215 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_214, x_6, x_7, x_8, x_9, x_10, x_11, x_213); +x_188 = x_215; +goto block_201; +} +else { -lean_object* x_216; lean_object* x_217; lean_object* x_218; -x_216 = lean_ctor_get(x_215, 0); +lean_object* x_216; lean_object* x_217; +x_216 = lean_ctor_get(x_207, 1); lean_inc(x_216); -x_217 = lean_ctor_get(x_215, 1); -lean_inc(x_217); -lean_dec(x_215); +lean_dec(x_207); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_218 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_216, x_6, x_7, x_8, x_9, x_10, x_11, x_217); -if (lean_obj_tag(x_218) == 0) -{ -lean_object* x_219; lean_object* x_220; -x_219 = lean_ctor_get(x_218, 0); -lean_inc(x_219); -x_220 = lean_ctor_get(x_218, 1); -lean_inc(x_220); -lean_dec(x_218); -x_178 = x_219; -x_179 = x_220; -goto block_184; -} -else -{ -lean_object* x_221; lean_object* x_222; -x_221 = lean_ctor_get(x_218, 0); -lean_inc(x_221); -x_222 = lean_ctor_get(x_218, 1); -lean_inc(x_222); -lean_dec(x_218); -x_185 = x_221; -x_186 = x_222; -goto block_191; -} -} -else -{ -lean_object* x_223; lean_object* x_224; -lean_dec(x_2); -lean_dec(x_1); -x_223 = lean_ctor_get(x_215, 0); -lean_inc(x_223); -x_224 = lean_ctor_get(x_215, 1); -lean_inc(x_224); -lean_dec(x_215); -x_185 = x_223; -x_186 = x_224; -goto block_191; -} -} -} -} -else -{ -lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; -x_225 = lean_ctor_get(x_198, 0); -lean_inc(x_225); -lean_dec(x_198); -x_226 = lean_ctor_get(x_197, 1); -lean_inc(x_226); -lean_dec(x_197); -x_227 = lean_ctor_get(x_225, 0); -lean_inc(x_227); -x_228 = lean_ctor_get(x_225, 1); -lean_inc(x_228); -lean_dec(x_225); -x_229 = lean_box(x_3); -x_230 = lean_box(x_4); lean_inc(x_2); -lean_inc(x_228); -x_231 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); -lean_closure_set(x_231, 0, x_228); -lean_closure_set(x_231, 1, x_2); -lean_closure_set(x_231, 2, x_229); -lean_closure_set(x_231, 3, x_230); lean_inc(x_1); -x_232 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); -lean_closure_set(x_232, 0, x_1); -lean_closure_set(x_232, 1, x_228); -lean_closure_set(x_232, 2, x_231); -x_233 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); -lean_closure_set(x_233, 0, x_227); -lean_closure_set(x_233, 1, x_1); -lean_closure_set(x_233, 2, x_2); +x_217 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_216); +if (lean_obj_tag(x_217) == 0) +{ +lean_object* x_218; lean_object* x_219; lean_object* x_220; +x_218 = lean_ctor_get(x_217, 0); +lean_inc(x_218); +x_219 = lean_ctor_get(x_217, 1); +lean_inc(x_219); +lean_dec(x_217); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -x_234 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_232, x_233, x_6, x_7, x_8, x_9, x_10, x_11, x_226); -if (lean_obj_tag(x_234) == 0) +x_220 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_218, x_6, x_7, x_8, x_9, x_10, x_11, x_219); +x_188 = x_220; +goto block_201; +} +else { -lean_object* x_235; lean_object* x_236; -x_235 = lean_ctor_get(x_234, 0); -lean_inc(x_235); -x_236 = lean_ctor_get(x_234, 1); +lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; +lean_dec(x_2); +lean_dec(x_1); +x_221 = lean_ctor_get(x_217, 0); +lean_inc(x_221); +x_222 = lean_ctor_get(x_217, 1); +lean_inc(x_222); +if (lean_is_exclusive(x_217)) { + lean_ctor_release(x_217, 0); + lean_ctor_release(x_217, 1); + x_223 = x_217; +} else { + lean_dec_ref(x_217); + x_223 = lean_box(0); +} +if (lean_is_scalar(x_223)) { + x_224 = lean_alloc_ctor(1, 2, 0); +} else { + x_224 = x_223; +} +lean_ctor_set(x_224, 0, x_221); +lean_ctor_set(x_224, 1, x_222); +x_188 = x_224; +goto block_201; +} +} +} +} +else +{ +lean_object* x_225; lean_object* x_226; +x_225 = lean_ctor_get(x_208, 0); +lean_inc(x_225); +lean_dec(x_208); +x_226 = lean_ctor_get(x_225, 1); +lean_inc(x_226); +if (lean_obj_tag(x_226) == 0) +{ +lean_dec(x_226); +lean_dec(x_225); +if (x_4 == 0) +{ +lean_object* x_227; lean_object* x_228; lean_object* x_229; +x_227 = lean_ctor_get(x_207, 1); +lean_inc(x_227); +lean_dec(x_207); +x_228 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_229 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_228, x_6, x_7, x_8, x_9, x_10, x_11, x_227); +x_188 = x_229; +goto block_201; +} +else +{ +uint8_t x_230; +x_230 = lean_ctor_get_uint8(x_6, sizeof(void*)*8 + 3); +if (x_230 == 0) +{ +lean_object* x_231; lean_object* x_232; lean_object* x_233; +x_231 = lean_ctor_get(x_207, 1); +lean_inc(x_231); +lean_dec(x_207); +x_232 = lean_box(0); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_233 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_232, x_6, x_7, x_8, x_9, x_10, x_11, x_231); +x_188 = x_233; +goto block_201; +} +else +{ +lean_object* x_234; lean_object* x_235; +x_234 = lean_ctor_get(x_207, 1); +lean_inc(x_234); +lean_dec(x_207); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_235 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda_x3f(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_234); +if (lean_obj_tag(x_235) == 0) +{ +lean_object* x_236; lean_object* x_237; lean_object* x_238; +x_236 = lean_ctor_get(x_235, 0); lean_inc(x_236); -lean_dec(x_234); -x_178 = x_235; -x_179 = x_236; -goto block_184; -} -else -{ -lean_object* x_237; lean_object* x_238; -x_237 = lean_ctor_get(x_234, 0); +x_237 = lean_ctor_get(x_235, 1); lean_inc(x_237); -x_238 = lean_ctor_get(x_234, 1); -lean_inc(x_238); -lean_dec(x_234); -x_185 = x_237; -x_186 = x_238; -goto block_191; -} -} +lean_dec(x_235); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_238 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1(x_1, x_2, x_3, x_236, x_6, x_7, x_8, x_9, x_10, x_11, x_237); +x_188 = x_238; +goto block_201; } else { -lean_object* x_239; lean_object* x_240; +lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_dec(x_2); lean_dec(x_1); -x_239 = lean_ctor_get(x_197, 0); +x_239 = lean_ctor_get(x_235, 0); lean_inc(x_239); -x_240 = lean_ctor_get(x_197, 1); +x_240 = lean_ctor_get(x_235, 1); lean_inc(x_240); -lean_dec(x_197); -x_185 = x_239; -x_186 = x_240; -goto block_191; -} -block_184: -{ -lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_180 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_177, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_179); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_181 = lean_ctor_get(x_180, 1); -lean_inc(x_181); -if (lean_is_exclusive(x_180)) { - lean_ctor_release(x_180, 0); - lean_ctor_release(x_180, 1); - x_182 = x_180; +if (lean_is_exclusive(x_235)) { + lean_ctor_release(x_235, 0); + lean_ctor_release(x_235, 1); + x_241 = x_235; } else { - lean_dec_ref(x_180); - x_182 = lean_box(0); + lean_dec_ref(x_235); + x_241 = lean_box(0); } -if (lean_is_scalar(x_182)) { - x_183 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_241)) { + x_242 = lean_alloc_ctor(1, 2, 0); } else { - x_183 = x_182; + x_242 = x_241; } -lean_ctor_set(x_183, 0, x_178); -lean_ctor_set(x_183, 1, x_181); -return x_183; +lean_ctor_set(x_242, 0, x_239); +lean_ctor_set(x_242, 1, x_240); +x_188 = x_242; +goto block_201; } -block_191: -{ -lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; -x_187 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_177, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_186); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_188 = lean_ctor_get(x_187, 1); -lean_inc(x_188); -if (lean_is_exclusive(x_187)) { - lean_ctor_release(x_187, 0); - lean_ctor_release(x_187, 1); - x_189 = x_187; -} else { - lean_dec_ref(x_187); - x_189 = lean_box(0); -} -if (lean_is_scalar(x_189)) { - x_190 = lean_alloc_ctor(1, 2, 0); -} else { - x_190 = x_189; - lean_ctor_set_tag(x_190, 1); -} -lean_ctor_set(x_190, 0, x_185); -lean_ctor_set(x_190, 1, x_188); -return x_190; } } } else { -uint8_t x_241; +lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; +x_243 = lean_ctor_get(x_207, 1); +lean_inc(x_243); +lean_dec(x_207); +x_244 = lean_ctor_get(x_225, 0); +lean_inc(x_244); +lean_dec(x_225); +x_245 = lean_ctor_get(x_226, 0); +lean_inc(x_245); +lean_dec(x_226); +x_246 = lean_box(x_3); +x_247 = lean_box(x_4); +lean_inc(x_2); +lean_inc(x_245); +x_248 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__2___boxed), 11, 4); +lean_closure_set(x_248, 0, x_245); +lean_closure_set(x_248, 1, x_2); +lean_closure_set(x_248, 2, x_246); +lean_closure_set(x_248, 3, x_247); +lean_inc(x_1); +x_249 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withMacroExpansion___rarg), 10, 3); +lean_closure_set(x_249, 0, x_1); +lean_closure_set(x_249, 1, x_245); +lean_closure_set(x_249, 2, x_248); +x_250 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3___boxed), 11, 3); +lean_closure_set(x_250, 0, x_244); +lean_closure_set(x_250, 1, x_1); +lean_closure_set(x_250, 2, x_2); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_251 = l_Lean_Elab_withInfoContext_x27___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___spec__1(x_249, x_250, x_6, x_7, x_8, x_9, x_10, x_11, x_243); +x_188 = x_251; +goto block_201; +} +} +} +else +{ +lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; +lean_dec(x_2); +lean_dec(x_1); +x_252 = lean_ctor_get(x_207, 0); +lean_inc(x_252); +x_253 = lean_ctor_get(x_207, 1); +lean_inc(x_253); +if (lean_is_exclusive(x_207)) { + lean_ctor_release(x_207, 0); + lean_ctor_release(x_207, 1); + x_254 = x_207; +} else { + lean_dec_ref(x_207); + x_254 = lean_box(0); +} +if (lean_is_scalar(x_254)) { + x_255 = lean_alloc_ctor(1, 2, 0); +} else { + x_255 = x_254; +} +lean_ctor_set(x_255, 0, x_252); +lean_ctor_set(x_255, 1, x_253); +x_188 = x_255; +goto block_201; +} +block_201: +{ +if (lean_obj_tag(x_188) == 0) +{ +lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +x_189 = lean_ctor_get(x_188, 0); +lean_inc(x_189); +x_190 = lean_ctor_get(x_188, 1); +lean_inc(x_190); +lean_dec(x_188); +x_191 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_187, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_190); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_192 = lean_ctor_get(x_191, 1); +lean_inc(x_192); +if (lean_is_exclusive(x_191)) { + lean_ctor_release(x_191, 0); + lean_ctor_release(x_191, 1); + x_193 = x_191; +} else { + lean_dec_ref(x_191); + x_193 = lean_box(0); +} +if (lean_is_scalar(x_193)) { + x_194 = lean_alloc_ctor(0, 2, 0); +} else { + x_194 = x_193; +} +lean_ctor_set(x_194, 0, x_189); +lean_ctor_set(x_194, 1, x_192); +return x_194; +} +else +{ +lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; +x_195 = lean_ctor_get(x_188, 0); +lean_inc(x_195); +x_196 = lean_ctor_get(x_188, 1); +lean_inc(x_196); +lean_dec(x_188); +x_197 = l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(x_187, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_196); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_198 = lean_ctor_get(x_197, 1); +lean_inc(x_198); +if (lean_is_exclusive(x_197)) { + lean_ctor_release(x_197, 0); + lean_ctor_release(x_197, 1); + x_199 = x_197; +} else { + lean_dec_ref(x_197); + x_199 = lean_box(0); +} +if (lean_is_scalar(x_199)) { + x_200 = lean_alloc_ctor(1, 2, 0); +} else { + x_200 = x_199; + lean_ctor_set_tag(x_200, 1); +} +lean_ctor_set(x_200, 0, x_195); +lean_ctor_set(x_200, 1, x_198); +return x_200; +} +} +} +} +else +{ +uint8_t x_256; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -34224,23 +34443,23 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_2); lean_dec(x_1); -x_241 = !lean_is_exclusive(x_14); -if (x_241 == 0) +x_256 = !lean_is_exclusive(x_14); +if (x_256 == 0) { return x_14; } else { -lean_object* x_242; lean_object* x_243; lean_object* x_244; -x_242 = lean_ctor_get(x_14, 0); -x_243 = lean_ctor_get(x_14, 1); -lean_inc(x_243); -lean_inc(x_242); +lean_object* x_257; lean_object* x_258; lean_object* x_259; +x_257 = lean_ctor_get(x_14, 0); +x_258 = lean_ctor_get(x_14, 1); +lean_inc(x_258); +lean_inc(x_257); lean_dec(x_14); -x_244 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_244, 0, x_242); -lean_ctor_set(x_244, 1, x_243); -return x_244; +x_259 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_259, 0, x_257); +lean_ctor_set(x_259, 1, x_258); +return x_259; } } } @@ -38988,7 +39207,7 @@ lean_dec(x_3); return x_10; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1() { _start: { lean_object* x_1; @@ -38996,21 +39215,21 @@ x_1 = lean_mk_string("letrec"); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Term_MVarErrorInfo_logError___closed__12; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2; x_3 = l_Lean_registerTraceClass(x_2, x_1); return x_3; } @@ -39307,7 +39526,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_isLetRecAuxMVar(lean_object* x_1, lean _start: { lean_object* x_9; uint8_t x_10; lean_object* x_11; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_9 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2; +x_9 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2; x_38 = lean_st_ref_get(x_7, x_8); x_39 = lean_ctor_get(x_38, 0); lean_inc(x_39); @@ -49234,7 +49453,7 @@ x_3 = lean_alloc_closure((void*)(l_Lean_Elab_withoutModifyingStateWithInfoAndMes return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -49244,7 +49463,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2() { _start: { lean_object* x_1; @@ -49252,17 +49471,17 @@ x_1 = lean_mk_string("debug"); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Term_MVarErrorInfo_logError___closed__12; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; @@ -49274,7 +49493,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); lean_dec(x_3); -x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1; +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1; x_6 = l_Lean_registerTraceClass(x_5, x_4); if (lean_obj_tag(x_6) == 0) { @@ -49282,7 +49501,7 @@ lean_object* x_7; lean_object* x_8; lean_object* x_9; x_7 = lean_ctor_get(x_6, 1); lean_inc(x_7); lean_dec(x_6); -x_8 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3; +x_8 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3; x_9 = l_Lean_registerTraceClass(x_8, x_7); return x_9; } @@ -50129,11 +50348,11 @@ l_Lean_Elab_Term_mkAuxName___closed__1 = _init_l_Lean_Elab_Term_mkAuxName___clos lean_mark_persistent(l_Lean_Elab_Term_mkAuxName___closed__1); l_Lean_Elab_Term_mkAuxName___closed__2 = _init_l_Lean_Elab_Term_mkAuxName___closed__2(); lean_mark_persistent(l_Lean_Elab_Term_mkAuxName___closed__2); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__1); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031____closed__2); -res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12031_(lean_io_mk_world()); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__1); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038____closed__2); +res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_12038_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_Elab_Term_isLetRecAuxMVar___lambda__2___closed__1 = _init_l_Lean_Elab_Term_isLetRecAuxMVar___lambda__2___closed__1(); @@ -50254,13 +50473,13 @@ l___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___closed_ lean_mark_persistent(l___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___closed__1); l___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___closed__2 = _init_l___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___closed__2(); lean_mark_persistent(l___private_Lean_Elab_Term_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999____closed__3); -res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_14999_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006____closed__3); +res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_15006_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/Util.c b/stage0/stdlib/Lean/Elab/Util.c index 937ac157fa..dba4ba6e34 100644 --- a/stage0/stdlib/Lean/Elab/Util.c +++ b/stage0/stdlib/Lean/Elab/Util.c @@ -46,6 +46,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_macroAttribute___lambda__4___boxed(lean_obj LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___rarg___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_id___rarg___boxed(lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2; static lean_object* l_Lean_Elab_macroAttribute___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); @@ -104,11 +105,12 @@ LEAN_EXPORT lean_object* l_Lean_Elab_macroAttribute___lambda__5___boxed(lean_obj static lean_object* l_Lean_Elab_expandOptNamedPrio___closed__7; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_expandMacroImpl_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Option_get___at_Lean_ppExpr___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_665_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_235_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746_(lean_object*); lean_object* l_Lean_throwError___at_Lean_registerInitAttrUnsafe___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___rarg___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3; LEAN_EXPORT lean_object* l_Lean_Syntax_prettyPrint(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_mkUnusedBaseName_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_liftMacroM___spec__2___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -124,7 +126,6 @@ LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_liftMacroM___spec__2(lean_ob static lean_object* l_Lean_Elab_expandOptNamedPrio___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_checkSyntaxNodeKindAtNamespaces___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_instMonadMacroAdapter___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_mkElabAttribute___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_mkMacroAttributeUnsafe___closed__9; @@ -178,7 +179,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_evalSyntaxConstant(lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_Elab_checkSyntaxNodeKindAtNamespaces___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pp_macroStack; LEAN_EXPORT lean_object* l_Lean_Elab_adaptMacro___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1; lean_object* l_Lean_throwError___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_macroAttribute___lambda__8___boxed(lean_object*); static lean_object* l_Lean_Elab_getBetterRef___closed__1; @@ -196,7 +196,6 @@ static lean_object* l_Lean_Elab_expandOptNamedPrio___closed__2; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_expandOptNamedPrio___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_expandOptNamedPrio___closed__8; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_checkSyntaxNodeKind___at_Lean_Elab_checkSyntaxNodeKindAtCurrentNamespaces___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Option_Basic_0__beqOption____x40_Init_Data_Option_Basic___hyg_734____at_Lean_Elab_getBetterRef___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_liftMacroM___spec__2___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -208,6 +207,7 @@ LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_liftMacroM___spec__2___rarg( LEAN_EXPORT lean_object* l_Lean_Elab_checkSyntaxNodeKind(lean_object*); lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___rarg___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_checkSyntaxNodeKindAtCurrentNamespaces(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_mkMacroAttributeUnsafe___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_macroAttribute___lambda__7(lean_object*); @@ -2048,7 +2048,7 @@ lean_dec(x_1); x_22 = !lean_is_exclusive(x_21); if (x_22 == 0) { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_23 = lean_ctor_get(x_21, 0); x_24 = lean_ctor_get(x_8, 0); lean_inc(x_24); @@ -2056,94 +2056,138 @@ lean_dec(x_8); x_25 = lean_ctor_get(x_24, 1); lean_inc(x_25); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_23); -x_27 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_27, 0, x_26); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_23); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); x_28 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_28, 0, x_27); -x_29 = lean_box(0); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -lean_ctor_set(x_21, 0, x_30); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_28); +x_30 = lean_box(0); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +lean_ctor_set(x_21, 0, x_31); return x_21; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_31 = lean_ctor_get(x_21, 0); -x_32 = lean_ctor_get(x_21, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_21); -x_33 = lean_ctor_get(x_8, 0); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_32 = lean_ctor_get(x_21, 0); +x_33 = lean_ctor_get(x_21, 1); lean_inc(x_33); -lean_dec(x_8); -x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_32); +lean_dec(x_21); +x_34 = lean_ctor_get(x_8, 0); lean_inc(x_34); -lean_dec(x_33); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_31); +lean_dec(x_8); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); x_36 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_36, 0, x_35); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_36); -x_38 = lean_box(0); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_32); -return x_40; +lean_ctor_set(x_36, 0, x_32); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_37); +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_38); +x_40 = lean_box(0); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_33); +return x_42; } } else { -lean_object* x_41; -lean_dec(x_8); -x_41 = lean_ctor_get(x_21, 0); -lean_inc(x_41); -if (lean_obj_tag(x_41) == 0) -{ -uint8_t x_42; -lean_dec(x_9); -lean_dec(x_2); -lean_dec(x_1); -x_42 = !lean_is_exclusive(x_21); -if (x_42 == 0) -{ lean_object* x_43; x_43 = lean_ctor_get(x_21, 0); -lean_dec(x_43); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +uint8_t x_44; +lean_dec(x_9); +lean_dec(x_2); +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_21); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_45 = lean_ctor_get(x_21, 0); +lean_dec(x_45); +x_46 = lean_ctor_get(x_8, 0); +lean_inc(x_46); +lean_dec(x_8); +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_48, 0, x_43); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +x_50 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_50, 0, x_49); +x_51 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_51, 0, x_50); +x_52 = lean_box(0); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set_tag(x_21, 0); +lean_ctor_set(x_21, 0, x_53); return x_21; } else { -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_21, 1); -lean_inc(x_44); +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_54 = lean_ctor_get(x_21, 1); +lean_inc(x_54); lean_dec(x_21); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_41); -lean_ctor_set(x_45, 1, x_44); -return x_45; +x_55 = lean_ctor_get(x_8, 0); +lean_inc(x_55); +lean_dec(x_8); +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_57 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_57, 0, x_43); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +x_59 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_59, 0, x_58); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_59); +x_61 = lean_box(0); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_54); +return x_63; } } else { -lean_object* x_46; -x_46 = lean_ctor_get(x_21, 1); -lean_inc(x_46); +lean_object* x_64; +lean_dec(x_8); +x_64 = lean_ctor_get(x_21, 1); +lean_inc(x_64); lean_dec(x_21); lean_inc(x_2); { lean_object* _tmp_2 = x_9; lean_object* _tmp_3 = x_2; -lean_object* _tmp_5 = x_46; +lean_object* _tmp_5 = x_64; x_3 = _tmp_2; x_4 = _tmp_3; x_6 = _tmp_5; @@ -2154,122 +2198,144 @@ goto _start; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_48 = lean_ctor_get(x_6, 0); -x_49 = lean_ctor_get(x_6, 1); -lean_inc(x_49); -lean_inc(x_48); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_66 = lean_ctor_get(x_6, 0); +x_67 = lean_ctor_get(x_6, 1); +lean_inc(x_67); +lean_inc(x_66); lean_dec(x_6); -x_50 = lean_unsigned_to_nat(1u); -x_51 = lean_nat_add(x_48, x_50); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_49); -x_53 = lean_ctor_get(x_5, 0); -x_54 = lean_ctor_get(x_5, 1); -x_55 = lean_ctor_get(x_5, 3); -x_56 = lean_ctor_get(x_5, 4); -x_57 = lean_ctor_get(x_5, 5); -lean_inc(x_57); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_inc(x_53); -x_58 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_58, 0, x_53); -lean_ctor_set(x_58, 1, x_54); -lean_ctor_set(x_58, 2, x_48); -lean_ctor_set(x_58, 3, x_55); -lean_ctor_set(x_58, 4, x_56); -lean_ctor_set(x_58, 5, x_57); -lean_inc(x_1); -x_59 = lean_apply_3(x_10, x_1, x_58, x_52); -if (lean_obj_tag(x_59) == 0) -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_9); -lean_dec(x_2); -lean_dec(x_1); -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; -} else { - lean_dec_ref(x_59); - x_62 = lean_box(0); -} -x_63 = lean_ctor_get(x_8, 0); -lean_inc(x_63); -lean_dec(x_8); -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_60); -x_66 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_66, 0, x_65); -x_67 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_67, 0, x_66); -x_68 = lean_box(0); -x_69 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -if (lean_is_scalar(x_62)) { - x_70 = lean_alloc_ctor(0, 2, 0); -} else { - x_70 = x_62; -} +x_68 = lean_unsigned_to_nat(1u); +x_69 = lean_nat_add(x_66, x_68); +x_70 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_70, 0, x_69); -lean_ctor_set(x_70, 1, x_61); -return x_70; -} -else -{ -lean_object* x_71; -lean_dec(x_8); -x_71 = lean_ctor_get(x_59, 0); +lean_ctor_set(x_70, 1, x_67); +x_71 = lean_ctor_get(x_5, 0); +x_72 = lean_ctor_get(x_5, 1); +x_73 = lean_ctor_get(x_5, 3); +x_74 = lean_ctor_get(x_5, 4); +x_75 = lean_ctor_get(x_5, 5); +lean_inc(x_75); +lean_inc(x_74); +lean_inc(x_73); +lean_inc(x_72); lean_inc(x_71); -if (lean_obj_tag(x_71) == 0) +x_76 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_76, 0, x_71); +lean_ctor_set(x_76, 1, x_72); +lean_ctor_set(x_76, 2, x_66); +lean_ctor_set(x_76, 3, x_73); +lean_ctor_set(x_76, 4, x_74); +lean_ctor_set(x_76, 5, x_75); +lean_inc(x_1); +x_77 = lean_apply_3(x_10, x_1, x_76, x_70); +if (lean_obj_tag(x_77) == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_dec(x_9); lean_dec(x_2); lean_dec(x_1); -x_72 = lean_ctor_get(x_59, 1); -lean_inc(x_72); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_73 = x_59; +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_77, 1); +lean_inc(x_79); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_80 = x_77; } else { - lean_dec_ref(x_59); - x_73 = lean_box(0); + lean_dec_ref(x_77); + x_80 = lean_box(0); } -if (lean_is_scalar(x_73)) { - x_74 = lean_alloc_ctor(1, 2, 0); +x_81 = lean_ctor_get(x_8, 0); +lean_inc(x_81); +lean_dec(x_8); +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +lean_dec(x_81); +x_83 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_83, 0, x_78); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +x_85 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_85, 0, x_84); +x_86 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_86, 0, x_85); +x_87 = lean_box(0); +x_88 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_88, 0, x_86); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_80)) { + x_89 = lean_alloc_ctor(0, 2, 0); } else { - x_74 = x_73; + x_89 = x_80; } -lean_ctor_set(x_74, 0, x_71); -lean_ctor_set(x_74, 1, x_72); -return x_74; +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_79); +return x_89; } else { -lean_object* x_75; -x_75 = lean_ctor_get(x_59, 1); -lean_inc(x_75); -lean_dec(x_59); +lean_object* x_90; +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +if (lean_obj_tag(x_90) == 0) +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_9); +lean_dec(x_2); +lean_dec(x_1); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; +} else { + lean_dec_ref(x_77); + x_92 = lean_box(0); +} +x_93 = lean_ctor_get(x_8, 0); +lean_inc(x_93); +lean_dec(x_8); +x_94 = lean_ctor_get(x_93, 1); +lean_inc(x_94); +lean_dec(x_93); +x_95 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_95, 0, x_90); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_94); +lean_ctor_set(x_96, 1, x_95); +x_97 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_97, 0, x_96); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); +x_99 = lean_box(0); +x_100 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_100, 0, x_98); +lean_ctor_set(x_100, 1, x_99); +if (lean_is_scalar(x_92)) { + x_101 = lean_alloc_ctor(0, 2, 0); +} else { + x_101 = x_92; + lean_ctor_set_tag(x_101, 0); +} +lean_ctor_set(x_101, 0, x_100); +lean_ctor_set(x_101, 1, x_91); +return x_101; +} +else +{ +lean_object* x_102; +lean_dec(x_8); +x_102 = lean_ctor_get(x_77, 1); +lean_inc(x_102); +lean_dec(x_77); lean_inc(x_2); { lean_object* _tmp_2 = x_9; lean_object* _tmp_3 = x_2; -lean_object* _tmp_5 = x_75; +lean_object* _tmp_5 = x_102; x_3 = _tmp_2; x_4 = _tmp_3; x_6 = _tmp_5; @@ -2306,7 +2372,7 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Elab_expandMacroImpl_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_inc(x_2); x_5 = l_Lean_Syntax_getKind(x_2); x_6 = l_Lean_Elab_macroAttribute; @@ -2314,9 +2380,6 @@ x_7 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_6, x_1, x_5); x_8 = lean_box(0); x_9 = l_Lean_Elab_expandMacroImpl_x3f___closed__1; x_10 = l_List_forIn_loop___at_Lean_Elab_expandMacroImpl_x3f___spec__1(x_2, x_9, x_7, x_9, x_3, x_4); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_11, 0); @@ -2377,29 +2440,6 @@ return x_22; } } } -else -{ -uint8_t x_23; -x_23 = !lean_is_exclusive(x_10); -if (x_23 == 0) -{ -return x_10; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_10, 0); -x_25 = lean_ctor_get(x_10, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_10); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -} } LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_expandMacroImpl_x3f___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: @@ -2643,11 +2683,8 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); if (lean_obj_tag(x_6) == 0) @@ -2682,89 +2719,131 @@ uint8_t x_13; x_13 = !lean_is_exclusive(x_6); if (x_13 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_5); -if (x_14 == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_5, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); +uint8_t x_16; lean_dec(x_15); -lean_ctor_set(x_6, 0, x_17); +lean_free_object(x_6); +x_16 = !lean_is_exclusive(x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_5, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_5, 0, x_18); return x_5; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_6, 0); +lean_object* x_19; lean_object* x_20; lean_object* x_21; x_19 = lean_ctor_get(x_5, 1); lean_inc(x_19); lean_dec(x_5); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -lean_ctor_set(x_6, 0, x_20); +x_20 = lean_box(0); x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); return x_21; } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); -lean_dec(x_6); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_24 = x_5; -} else { - lean_dec_ref(x_5); - x_24 = lean_box(0); +uint8_t x_22; +x_22 = !lean_is_exclusive(x_5); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_5, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_15, 0); +lean_inc(x_24); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_24); +return x_5; } -x_25 = lean_ctor_get(x_22, 1); +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_5, 1); lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); +lean_dec(x_5); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_6, 0, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_6); +lean_ctor_set(x_27, 1, x_25); return x_27; } } } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_5); -if (x_28 == 0) +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); +lean_dec(x_6); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -return x_5; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_31 = x_5; +} else { + lean_dec_ref(x_5); + x_31 = lean_box(0); +} +x_32 = lean_box(0); +if (lean_is_scalar(x_31)) { + x_33 = lean_alloc_ctor(0, 2, 0); +} else { + x_33 = x_31; +} +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_30); +return x_33; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_5, 0); -x_30 = lean_ctor_get(x_5, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_5); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_35 = x_5; +} else { + lean_dec_ref(x_5); + x_35 = lean_box(0); +} +x_36 = lean_ctor_get(x_29, 0); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 2, 0); +} else { + x_38 = x_35; +} +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_34); +return x_38; +} } } } @@ -3481,7 +3560,7 @@ return x_25; } } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -3491,7 +3570,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2() { _start: { lean_object* x_1; @@ -3499,21 +3578,21 @@ x_1 = lean_mk_string("step"); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1; x_3 = l_Lean_registerTraceClass(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -3521,7 +3600,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); lean_dec(x_3); -x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3; +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3; x_6 = l_Lean_registerTraceClass(x_5, x_4); return x_6; } @@ -3721,13 +3800,13 @@ lean_mark_persistent(l_Lean_Elab_macroAttribute); lean_dec_ref(res); l_Lean_Elab_expandMacroImpl_x3f___closed__1 = _init_l_Lean_Elab_expandMacroImpl_x3f___closed__1(); lean_mark_persistent(l_Lean_Elab_expandMacroImpl_x3f___closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746____closed__3); -res = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1746_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753____closed__3); +res = l_Lean_Elab_initFn____x40_Lean_Elab_Util___hyg_1753_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/ExprDefEq.c b/stage0/stdlib/Lean/Meta/ExprDefEq.c index 9299441843..ee948da77d 100644 --- a/stage0/stdlib/Lean/Meta/ExprDefEq.c +++ b/stage0/stdlib/Lean/Meta/ExprDefEq.c @@ -24,6 +24,7 @@ lean_object* lean_expr_update_forall(lean_object*, uint8_t, lean_object*, lean_o LEAN_EXPORT lean_object* l_Lean_Meta_mkAuxMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__23___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__48(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isCached___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__36(lean_object*, lean_object*, size_t, size_t); @@ -39,7 +40,6 @@ lean_object* l_Lean_registerTraceClass(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__19___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkApp___spec__2(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1; static lean_object* l_Lean_Meta_isDefEqStringLit___closed__3; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visitMain___at_Lean_Meta_CheckAssignment_checkMVar___spec__31(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); @@ -60,11 +60,12 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isSyntheti LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__53___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkCacheKey(lean_object*, lean_object*); static lean_object* l_Lean_Meta_CheckAssignment_check___closed__12; +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__6(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldBothDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225_(lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_CheckAssignment_checkApp___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); @@ -87,13 +88,13 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqRight___ LEAN_EXPORT lean_object* l_Std_PersistentArray_anyM___at_Lean_Meta_CheckAssignment_checkMVar___spec__25___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__21(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_addTrace___at_Lean_Meta_CheckAssignment_checkFVar___spec__4___closed__6; -static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visitMain___at_Lean_Meta_CheckAssignment_checkMVar___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqQuickOther___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_ExprStructEq_instHashableExprStructEq; extern lean_object* l_Lean_maxRecDepthErrorMessage; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_checkFVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isLetFVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__37(lean_object*, lean_object*, lean_object*, lean_object*); @@ -103,6 +104,7 @@ lean_object* l_Lean_Meta_occursCheck(lean_object*, lean_object*, lean_object*, l LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_sameHeadSymbol___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_object* l_Lean_MetavarContext_getExprAssignment_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visitMain___at_Lean_Meta_CheckAssignment_checkMVar___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -115,6 +117,7 @@ size_t lean_usize_sub(size_t, size_t); lean_object* l___private_Lean_Expr_0__Lean_Expr_etaExpandedAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_CheckAssignment_checkFVar___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_findCached_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_environment_find(lean_object*, lean_object*); lean_object* lean_is_expr_def_eq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace_addTraceOptions(lean_object*); lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -130,7 +133,6 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignmen lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqBinding(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__14(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignmentQuick_check_visit___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -142,7 +144,6 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst___l uint8_t l_Lean_Expr_isApp(lean_object*); uint8_t l_Lean_LocalContext_containsFVar(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldComparingHeadsDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_CheckAssignment_checkApp___spec__3___boxed__const__1; uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -163,7 +164,6 @@ lean_object* l_Lean_LocalContext_findFVar_x3f(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqRight___closed__2; lean_object* l_Lean_Meta_isClass_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__2; -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3; static lean_object* l_Lean_Meta_isExprDefEqAuxImpl___lambda__1___closed__3; lean_object* l_Lean_MessageData_ofList(lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -182,6 +182,7 @@ LEAN_EXPORT lean_object* l_List_replace___at___private_Lean_Meta_ExprDefEq_0__Le static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___closed__1; lean_object* l_Std_mkHashSetImp___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__26___boxed(lean_object*, lean_object*); @@ -190,6 +191,7 @@ size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_etaEq___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__34(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApprox_loop___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgsFirstPass(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_LocalContext_contains(lean_object*, lean_object*); @@ -213,6 +215,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_c extern lean_object* l_Lean_ExprStructEq_instBEqExprStructEq; lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_addTrace___at_Lean_Meta_CheckAssignment_checkFVar___spec__4___closed__3; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_addAssignmentInfo___closed__1; lean_object* l_Std_PersistentArray_foldlM___at___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -228,7 +231,6 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___c lean_object* l_Lean_Meta_isLevelDefEqAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18; size_t lean_uint64_to_usize(uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_checkAssignmentExceptionId; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visitMain___at_Lean_Meta_CheckAssignment_checkMVar___spec__17(lean_object*, lean_object*, lean_object*, lean_object*); @@ -240,6 +242,8 @@ lean_object* l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_po static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__9; lean_object* l_Std_HashMap_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_State_cache___default; +LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__5; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__22(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -267,20 +271,25 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_c LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_trySynthPending(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_checkAssignment___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqQuickOther___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_CheckAssignment_checkApp___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isExprDefEqAuxImpl___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlFromMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__46___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqQuickMVarMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__3; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); lean_object* l_Lean_Meta_isListLevelDefEqAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfold(lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15; LEAN_EXPORT lean_object* l_Lean_Meta_isDefEqBindingDomain(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Std_PersistentArray_anyM___at_Lean_Meta_CheckAssignment_checkMVar___spec__39(lean_object*, lean_object*); lean_object* l_StateRefT_x27_lift(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__17; +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProj_isDefEqSingleton___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__43___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -301,6 +310,7 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_cacheResult___c static size_t l_Std_PersistentHashMap_containsAux___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isCached___spec__2___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_cacheResult___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__7; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__15(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_assignToConstFun___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_isExprDefEqAuxImpl___closed__1; @@ -309,6 +319,8 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkM static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__18; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__15; static lean_object* l_Lean_Meta_CheckAssignment_checkMVar___closed__4; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at_Lean_Meta_isExprDefEqAuxImpl___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -321,6 +333,8 @@ LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_Ex LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_consumeLet___boxed(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__8(lean_object*, lean_object*, size_t, size_t); lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5; +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__35(lean_object*, lean_object*, size_t, size_t); @@ -351,6 +365,7 @@ static lean_object* l_Lean_Meta_isExprDefEqAuxImpl___closed__2; LEAN_EXPORT uint8_t l_Std_PersistentArray_anyM___at_Lean_Meta_CheckAssignment_checkMVar___spec__4(lean_object*, lean_object*); lean_object* l_Lean_Meta_toCtorIfLit(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__58(lean_object*, lean_object*, size_t, size_t, lean_object*); +lean_object* l_Nat_repr(lean_object*); lean_object* l_Lean_Meta_withNewLocalInstance___at___private_Lean_Meta_Basic_0__Lean_Meta_withNewLocalInstancesImp___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isDefEqOffset(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_back___at_Lean_Meta_DiscrTree_mkPathAux___spec__1(lean_object*); @@ -391,12 +406,14 @@ lean_object* lean_array_to_list(lean_object*, lean_object*); static lean_object* l_Lean_Meta_isDefEqStringLit___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7; LEAN_EXPORT uint8_t l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__40(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeps___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProj_isDefEqSingleton(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_addLetDeps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgs_processOtherArgs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqBinding___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4; static lean_object* l_Lean_Meta_CheckAssignment_instMonadCacheExprExprCheckAssignmentM___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApproxAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApprox_loop___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -448,7 +465,6 @@ uint8_t lean_expr_quick_lt(lean_object*, lean_object*); lean_object* l_Lean_mkFVar(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_checkAssignment___spec__2(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___closed__4; -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21; uint8_t l_Lean_Expr_Data_binderInfo(uint64_t); lean_object* l_Lean_ConstantInfo_hints(lean_object*); lean_object* l_Lean_Meta_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -492,7 +508,7 @@ lean_object* l_Lean_registerInternalExceptionId(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isProjectionFn___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkFVar___spec__2(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Std_PersistentArray_foldlM___at_Lean_Meta_CheckAssignment_checkMVar___spec__45___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_CheckAssignment_checkApp___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqRight(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); @@ -506,14 +522,18 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAs static lean_object* l_Lean_Meta_isExprDefEqAuxImpl___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3; LEAN_EXPORT lean_object* l_Std_PersistentArray_foldlM___at_Lean_Meta_CheckAssignment_checkMVar___spec__45(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isCached___spec__2(lean_object*, size_t, lean_object*); +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4; lean_object* l_Lean_Meta_assignExprMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_findCached_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2; static lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___closed__1; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2; lean_object* l_Std_PersistentArray_push___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__1; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeft___closed__2; @@ -536,15 +556,19 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAs uint8_t l_Lean_Expr_isMVar(lean_object*); lean_object* l_Lean_instMonadTrace___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDeltaCandidate_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); lean_object* l_Std_PersistentArray_get_x21___at___private_Lean_Util_Trace_0__Lean_TraceState_toFormat___spec__1(lean_object*, lean_object*); lean_object* l_Lean_mkApp(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignmentQuick_check_visit___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasMVar(lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; LEAN_EXPORT lean_object* l_Std_HashSetImp_moveEntries___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeclsFrom_visit___spec__4(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__2; +static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4; lean_object* l_Lean_Name_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldNonProjFnDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -554,7 +578,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_Ex static lean_object* l_Lean_Meta_CheckAssignment_instMonadCacheExprExprCheckAssignmentM___closed__2; LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isCached___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgs_processOtherArgs___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; LEAN_EXPORT uint8_t l_Lean_Meta_CheckAssignmentQuick_check(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_simpAssignmentArg___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_withNestedTracesFinalizer___at_Lean_Meta_isExprDefEqAuxImpl___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -566,8 +592,10 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignmen LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_skipDefEqCache___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Bool_toLBool(uint8_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_run(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___spec__1(lean_object*, lean_object*, size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_synth_pending(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -575,17 +603,21 @@ LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_throwCheckAssignmentFailure LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isAssignable(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__14; static lean_object* l_Lean_Meta_CheckAssignment_check___closed__13; +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6; lean_object* l_Lean_Meta_isExprMVarAssigned(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_contains___at___private_Lean_Class_0__Lean_checkOutParam___spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqQuickOther___closed__4; -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1; +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; lean_object* l_Lean_getStructureCtor(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApprox_loop___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__33___boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; lean_object* l_Lean_Meta_getFunInfoNArgs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -601,7 +633,8 @@ uint8_t l_Lean_Expr_isFVar(lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__5; static lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___closed__3; lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_12978_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_13898_(lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_expr_update_lambda(lean_object*, uint8_t, lean_object*, lean_object*); static lean_object* l_Lean_Meta_CheckAssignment_throwCheckAssignmentFailure___rarg___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_checkAssignment___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -611,15 +644,19 @@ lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_obje lean_object* l_Lean_Meta_throwUnknownMVar___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__59(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___lambda__1(lean_object*); +lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_expr_instantiate_rev(lean_object*, lean_object*); uint8_t l_Lean_Meta_TransparencyMode_lt(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqApp___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeft___closed__1; +static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__30___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isDelayedAssigned(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__3; +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); lean_object* l_Lean_isReducible___at___private_Lean_Meta_Basic_0__Lean_Meta_getDefInfoTemp___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Std_HashSetImp_contains___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDepsAux___spec__1(lean_object*, lean_object*); @@ -628,6 +665,7 @@ lean_object* l_instHashableProd___rarg___boxed(lean_object*, lean_object*, lean_ lean_object* l_Lean_Meta_getMVarDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_cacheResult(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_replace___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeclsFrom_visit___spec__6___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; uint8_t l_Lean_Expr_isStringLit(lean_object*); static lean_object* l_Lean_Meta_CheckAssignment_check___closed__4; lean_object* l_Lean_Meta_instantiateMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -639,10 +677,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLef LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignmentQuick_check_visit___spec__2(lean_object*, lean_object*, size_t, size_t); uint64_t lean_uint64_mix_hash(uint64_t, uint64_t); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visitMain___at_Lean_Meta_CheckAssignment_checkMVar___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2; static lean_object* l_Lean_Meta_CheckAssignment_check___closed__11; +static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_checkAssignment___spec__1___closed__1; extern lean_object* l_Lean_Expr_instBEqExpr; -static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2; +static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_checkAssignment___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_consumeLet(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_MetavarContext_DependsOn_dep_visit___at_Lean_Meta_CheckAssignment_checkMVar___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -650,6 +691,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLef LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApproxAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isAssignable___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_InductiveVal_nctors(lean_object*); lean_object* l_Lean_throwError___at_Lean_Meta_withIncRecDepth___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_shouldReduceReducibleOnly(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDeltaCandidate_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -657,22 +699,23 @@ static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAs lean_object* l_ReaderT_instMonadReaderT___rarg(lean_object*); lean_object* l_Lean_Meta_reduceNative_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_MapDeclarationExtension_contains___at_Lean_Environment_isProjectionFn___spec__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqQuickOther___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_contains___at_Lean_Meta_CheckAssignment_checkFVar___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgsFirstPass___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__55___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgs___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqArgsFirstPass___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__42___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isDefEqNat(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__50___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unfoldDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); -static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_CheckAssignment_checkFVar___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_run___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -693,12 +736,16 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkM lean_object* lean_usize_to_nat(size_t); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_addAssignmentInfo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1; lean_object* l_Std_instInhabitedPersistentArrayNode(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkApp___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_visit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__52(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2; +lean_object* l_Lean_indentExpr(lean_object*); lean_object* l_Lean_mkBVar(lean_object*); LEAN_EXPORT uint8_t l_Std_PersistentArray_anyM___at_Lean_Meta_CheckAssignment_checkMVar___spec__18(lean_object*, lean_object*); uint8_t l_Lean_Expr_hasFVar(lean_object*); @@ -706,6 +753,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_ExprDef LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkMVar___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_addAssignmentInfo___closed__2; LEAN_EXPORT uint8_t l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__12(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_setPostponed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignmentQuick_check_visit___spec__1(lean_object*, lean_object*, size_t, size_t); @@ -727,6 +775,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isSyntheti static lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_tryHeuristic___spec__1___closed__2; LEAN_EXPORT uint8_t l_Std_PersistentArray_anyMAux___at_Lean_Meta_CheckAssignment_checkMVar___spec__26(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssignment_cache(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12; uint8_t l_Lean_LocalContext_isSubPrefixOf(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__12; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -757,6 +806,2775 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFV lean_object* l_Lean_Meta_getFVarLocalDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeftRight___closed__1; static lean_object* l_Lean_Meta_isDefEqStringLit___closed__2; +LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_ctor_get(x_4, 3); +x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_7); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set_tag(x_8, 1); +lean_ctor_set(x_8, 0, x_11); +return x_8; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_8, 0); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_8); +lean_inc(x_7); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_12); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("'"); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("' is not a inductive type"); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_1); +x_7 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 5) +{ +uint8_t x_9; +lean_dec(x_1); +x_9 = !lean_is_exclusive(x_7); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_7, 0); +lean_dec(x_10); +x_11 = lean_ctor_get(x_8, 0); +lean_inc(x_11); +lean_dec(x_8); +lean_ctor_set(x_7, 0, x_11); +return x_7; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_7, 1); +lean_inc(x_12); +lean_dec(x_7); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_12); +return x_14; +} +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_8); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = lean_box(0); +x_17 = l_Lean_mkConst(x_1, x_16); +x_18 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_18, 0, x_17); +x_19 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2; +x_20 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +x_21 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4; +x_22 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +x_23 = l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2(x_22, x_2, x_3, x_4, x_5, x_15); +return x_23; +} +} +else +{ +uint8_t x_24; +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_7); +if (x_24 == 0) +{ +return x_7; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_7, 0); +x_26 = lean_ctor_get(x_7, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_7); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; +x_1 = 0; +x_2 = lean_box(x_1); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1; +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; +x_7 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_7); +lean_ctor_set(x_8, 1, x_6); +return x_8; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("Meta"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("isDefEq"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2; +x_2 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("eta"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; +x_2 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("struct"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6; +x_2 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___boxed), 6, 0); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("failed, unexpect arg #"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(", argument"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("\nis not defeq to"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(""); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_2); +lean_inc(x_1); +x_11 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; uint8_t x_13; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_unbox(x_12); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +lean_dec(x_4); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_dec(x_11); +x_15 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_41 = lean_st_ref_get(x_9, x_14); +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_42, 3); +lean_inc(x_43); +lean_dec(x_42); +x_44 = lean_ctor_get_uint8(x_43, sizeof(void*)*1); +lean_dec(x_43); +if (x_44 == 0) +{ +lean_object* x_45; uint8_t x_46; +x_45 = lean_ctor_get(x_41, 1); +lean_inc(x_45); +lean_dec(x_41); +x_46 = 0; +x_16 = x_46; +x_17 = x_45; +goto block_40; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_47 = lean_ctor_get(x_41, 1); +lean_inc(x_47); +lean_dec(x_41); +x_48 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_15, x_6, x_7, x_8, x_9, x_47); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); +lean_dec(x_48); +x_51 = lean_unbox(x_49); +lean_dec(x_49); +x_16 = x_51; +x_17 = x_50; +goto block_40; +} +block_40: +{ +lean_object* x_18; +x_18 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_16 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_19 = lean_box(0); +x_20 = lean_apply_6(x_18, x_19, x_6, x_7, x_8, x_9, x_17); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_21 = l_Nat_repr(x_3); +x_22 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_23, 0, x_22); +x_24 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11; +x_25 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +x_26 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13; +x_27 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +x_28 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_28, 0, x_1); +x_29 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +x_30 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15; +x_31 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +x_32 = l_Lean_indentExpr(x_2); +x_33 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +x_34 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_35 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +x_36 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_15, x_35, x_6, x_7, x_8, x_9, x_17); +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +lean_dec(x_36); +x_39 = lean_apply_6(x_18, x_37, x_6, x_7, x_8, x_9, x_38); +return x_39; +} +} +} +else +{ +uint8_t x_52; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_52 = !lean_is_exclusive(x_11); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_11, 0); +lean_dec(x_53); +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, x_4); +lean_ctor_set(x_11, 0, x_54); +return x_11; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_11, 1); +lean_inc(x_55); +lean_dec(x_11); +x_56 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_56, 0, x_4); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_56); +lean_ctor_set(x_57, 1, x_55); +return x_57; +} +} +} +else +{ +uint8_t x_58; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_58 = !lean_is_exclusive(x_11); +if (x_58 == 0) +{ +return x_11; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = lean_ctor_get(x_11, 0); +x_60 = lean_ctor_get(x_11, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_11); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_59); +lean_ctor_set(x_61, 1, x_60); +return x_61; +} +} +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("failed, projection expected"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(", unexpected projection #"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string(", at"); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; uint8_t x_16; +x_15 = lean_ctor_get(x_6, 1); +x_16 = lean_nat_dec_le(x_15, x_8); +if (x_16 == 0) +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_unsigned_to_nat(0u); +x_18 = lean_nat_dec_eq(x_7, x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_9); +x_19 = lean_unsigned_to_nat(1u); +x_20 = lean_nat_sub(x_7, x_19); +lean_dec(x_7); +x_39 = l_Lean_instInhabitedExpr; +x_40 = lean_array_get(x_39, x_4, x_8); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_41 = lean_whnf(x_40, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +switch (lean_obj_tag(x_42)) { +case 0: +{ +lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_43 = lean_ctor_get(x_41, 1); +lean_inc(x_43); +lean_dec(x_41); +x_44 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_60 = lean_st_ref_get(x_13, x_43); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_61, 3); +lean_inc(x_62); +lean_dec(x_61); +x_63 = lean_ctor_get_uint8(x_62, sizeof(void*)*1); +lean_dec(x_62); +if (x_63 == 0) +{ +lean_object* x_64; uint8_t x_65; +x_64 = lean_ctor_get(x_60, 1); +lean_inc(x_64); +lean_dec(x_60); +x_65 = 0; +x_45 = x_65; +x_46 = x_64; +goto block_59; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; +x_66 = lean_ctor_get(x_60, 1); +lean_inc(x_66); +lean_dec(x_60); +x_67 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_44, x_10, x_11, x_12, x_13, x_66); +x_68 = lean_ctor_get(x_67, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_67, 1); +lean_inc(x_69); +lean_dec(x_67); +x_70 = lean_unbox(x_68); +lean_dec(x_68); +x_45 = x_70; +x_46 = x_69; +goto block_59; +} +block_59: +{ +lean_object* x_47; +x_47 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_45 == 0) +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_42); +x_48 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_49 = lean_apply_6(x_47, x_48, x_10, x_11, x_12, x_13, x_46); +x_21 = x_49; +goto block_38; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_50 = l_Lean_indentExpr(x_42); +x_51 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_52 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_50); +x_53 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_54 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +x_55 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_44, x_54, x_10, x_11, x_12, x_13, x_46); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_58 = lean_apply_6(x_47, x_56, x_10, x_11, x_12, x_13, x_57); +x_21 = x_58; +goto block_38; +} +} +} +case 1: +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; lean_object* x_74; lean_object* x_88; lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_71 = lean_ctor_get(x_41, 1); +lean_inc(x_71); +lean_dec(x_41); +x_72 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_88 = lean_st_ref_get(x_13, x_71); +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_89, 3); +lean_inc(x_90); +lean_dec(x_89); +x_91 = lean_ctor_get_uint8(x_90, sizeof(void*)*1); +lean_dec(x_90); +if (x_91 == 0) +{ +lean_object* x_92; uint8_t x_93; +x_92 = lean_ctor_get(x_88, 1); +lean_inc(x_92); +lean_dec(x_88); +x_93 = 0; +x_73 = x_93; +x_74 = x_92; +goto block_87; +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_94 = lean_ctor_get(x_88, 1); +lean_inc(x_94); +lean_dec(x_88); +x_95 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_72, x_10, x_11, x_12, x_13, x_94); +x_96 = lean_ctor_get(x_95, 0); +lean_inc(x_96); +x_97 = lean_ctor_get(x_95, 1); +lean_inc(x_97); +lean_dec(x_95); +x_98 = lean_unbox(x_96); +lean_dec(x_96); +x_73 = x_98; +x_74 = x_97; +goto block_87; +} +block_87: +{ +lean_object* x_75; +x_75 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_73 == 0) +{ +lean_object* x_76; lean_object* x_77; +lean_dec(x_42); +x_76 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_77 = lean_apply_6(x_75, x_76, x_10, x_11, x_12, x_13, x_74); +x_21 = x_77; +goto block_38; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_78 = l_Lean_indentExpr(x_42); +x_79 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_80 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_78); +x_81 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_82 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +x_83 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_72, x_82, x_10, x_11, x_12, x_13, x_74); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +lean_dec(x_83); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_86 = lean_apply_6(x_75, x_84, x_10, x_11, x_12, x_13, x_85); +x_21 = x_86; +goto block_38; +} +} +} +case 2: +{ +lean_object* x_99; lean_object* x_100; uint8_t x_101; lean_object* x_102; lean_object* x_116; lean_object* x_117; lean_object* x_118; uint8_t x_119; +x_99 = lean_ctor_get(x_41, 1); +lean_inc(x_99); +lean_dec(x_41); +x_100 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_116 = lean_st_ref_get(x_13, x_99); +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_117, 3); +lean_inc(x_118); +lean_dec(x_117); +x_119 = lean_ctor_get_uint8(x_118, sizeof(void*)*1); +lean_dec(x_118); +if (x_119 == 0) +{ +lean_object* x_120; uint8_t x_121; +x_120 = lean_ctor_get(x_116, 1); +lean_inc(x_120); +lean_dec(x_116); +x_121 = 0; +x_101 = x_121; +x_102 = x_120; +goto block_115; +} +else +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; +x_122 = lean_ctor_get(x_116, 1); +lean_inc(x_122); +lean_dec(x_116); +x_123 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_100, x_10, x_11, x_12, x_13, x_122); +x_124 = lean_ctor_get(x_123, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_123, 1); +lean_inc(x_125); +lean_dec(x_123); +x_126 = lean_unbox(x_124); +lean_dec(x_124); +x_101 = x_126; +x_102 = x_125; +goto block_115; +} +block_115: +{ +lean_object* x_103; +x_103 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_101 == 0) +{ +lean_object* x_104; lean_object* x_105; +lean_dec(x_42); +x_104 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_105 = lean_apply_6(x_103, x_104, x_10, x_11, x_12, x_13, x_102); +x_21 = x_105; +goto block_38; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_106 = l_Lean_indentExpr(x_42); +x_107 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_108 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_108, 0, x_107); +lean_ctor_set(x_108, 1, x_106); +x_109 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_110 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_110, 0, x_108); +lean_ctor_set(x_110, 1, x_109); +x_111 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_100, x_110, x_10, x_11, x_12, x_13, x_102); +x_112 = lean_ctor_get(x_111, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_111, 1); +lean_inc(x_113); +lean_dec(x_111); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_114 = lean_apply_6(x_103, x_112, x_10, x_11, x_12, x_13, x_113); +x_21 = x_114; +goto block_38; +} +} +} +case 3: +{ +lean_object* x_127; lean_object* x_128; uint8_t x_129; lean_object* x_130; lean_object* x_144; lean_object* x_145; lean_object* x_146; uint8_t x_147; +x_127 = lean_ctor_get(x_41, 1); +lean_inc(x_127); +lean_dec(x_41); +x_128 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_144 = lean_st_ref_get(x_13, x_127); +x_145 = lean_ctor_get(x_144, 0); +lean_inc(x_145); +x_146 = lean_ctor_get(x_145, 3); +lean_inc(x_146); +lean_dec(x_145); +x_147 = lean_ctor_get_uint8(x_146, sizeof(void*)*1); +lean_dec(x_146); +if (x_147 == 0) +{ +lean_object* x_148; uint8_t x_149; +x_148 = lean_ctor_get(x_144, 1); +lean_inc(x_148); +lean_dec(x_144); +x_149 = 0; +x_129 = x_149; +x_130 = x_148; +goto block_143; +} +else +{ +lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; uint8_t x_154; +x_150 = lean_ctor_get(x_144, 1); +lean_inc(x_150); +lean_dec(x_144); +x_151 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_128, x_10, x_11, x_12, x_13, x_150); +x_152 = lean_ctor_get(x_151, 0); +lean_inc(x_152); +x_153 = lean_ctor_get(x_151, 1); +lean_inc(x_153); +lean_dec(x_151); +x_154 = lean_unbox(x_152); +lean_dec(x_152); +x_129 = x_154; +x_130 = x_153; +goto block_143; +} +block_143: +{ +lean_object* x_131; +x_131 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_129 == 0) +{ +lean_object* x_132; lean_object* x_133; +lean_dec(x_42); +x_132 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_133 = lean_apply_6(x_131, x_132, x_10, x_11, x_12, x_13, x_130); +x_21 = x_133; +goto block_38; +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_134 = l_Lean_indentExpr(x_42); +x_135 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_136 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_136, 0, x_135); +lean_ctor_set(x_136, 1, x_134); +x_137 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_138 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_138, 0, x_136); +lean_ctor_set(x_138, 1, x_137); +x_139 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_128, x_138, x_10, x_11, x_12, x_13, x_130); +x_140 = lean_ctor_get(x_139, 0); +lean_inc(x_140); +x_141 = lean_ctor_get(x_139, 1); +lean_inc(x_141); +lean_dec(x_139); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_142 = lean_apply_6(x_131, x_140, x_10, x_11, x_12, x_13, x_141); +x_21 = x_142; +goto block_38; +} +} +} +case 4: +{ +lean_object* x_155; lean_object* x_156; uint8_t x_157; lean_object* x_158; lean_object* x_172; lean_object* x_173; lean_object* x_174; uint8_t x_175; +x_155 = lean_ctor_get(x_41, 1); +lean_inc(x_155); +lean_dec(x_41); +x_156 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_172 = lean_st_ref_get(x_13, x_155); +x_173 = lean_ctor_get(x_172, 0); +lean_inc(x_173); +x_174 = lean_ctor_get(x_173, 3); +lean_inc(x_174); +lean_dec(x_173); +x_175 = lean_ctor_get_uint8(x_174, sizeof(void*)*1); +lean_dec(x_174); +if (x_175 == 0) +{ +lean_object* x_176; uint8_t x_177; +x_176 = lean_ctor_get(x_172, 1); +lean_inc(x_176); +lean_dec(x_172); +x_177 = 0; +x_157 = x_177; +x_158 = x_176; +goto block_171; +} +else +{ +lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; uint8_t x_182; +x_178 = lean_ctor_get(x_172, 1); +lean_inc(x_178); +lean_dec(x_172); +x_179 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_156, x_10, x_11, x_12, x_13, x_178); +x_180 = lean_ctor_get(x_179, 0); +lean_inc(x_180); +x_181 = lean_ctor_get(x_179, 1); +lean_inc(x_181); +lean_dec(x_179); +x_182 = lean_unbox(x_180); +lean_dec(x_180); +x_157 = x_182; +x_158 = x_181; +goto block_171; +} +block_171: +{ +lean_object* x_159; +x_159 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_157 == 0) +{ +lean_object* x_160; lean_object* x_161; +lean_dec(x_42); +x_160 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_161 = lean_apply_6(x_159, x_160, x_10, x_11, x_12, x_13, x_158); +x_21 = x_161; +goto block_38; +} +else +{ +lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; +x_162 = l_Lean_indentExpr(x_42); +x_163 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_164 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_162); +x_165 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_166 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_166, 0, x_164); +lean_ctor_set(x_166, 1, x_165); +x_167 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_156, x_166, x_10, x_11, x_12, x_13, x_158); +x_168 = lean_ctor_get(x_167, 0); +lean_inc(x_168); +x_169 = lean_ctor_get(x_167, 1); +lean_inc(x_169); +lean_dec(x_167); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_170 = lean_apply_6(x_159, x_168, x_10, x_11, x_12, x_13, x_169); +x_21 = x_170; +goto block_38; +} +} +} +case 5: +{ +lean_object* x_183; lean_object* x_184; uint8_t x_185; lean_object* x_186; lean_object* x_200; lean_object* x_201; lean_object* x_202; uint8_t x_203; +x_183 = lean_ctor_get(x_41, 1); +lean_inc(x_183); +lean_dec(x_41); +x_184 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_200 = lean_st_ref_get(x_13, x_183); +x_201 = lean_ctor_get(x_200, 0); +lean_inc(x_201); +x_202 = lean_ctor_get(x_201, 3); +lean_inc(x_202); +lean_dec(x_201); +x_203 = lean_ctor_get_uint8(x_202, sizeof(void*)*1); +lean_dec(x_202); +if (x_203 == 0) +{ +lean_object* x_204; uint8_t x_205; +x_204 = lean_ctor_get(x_200, 1); +lean_inc(x_204); +lean_dec(x_200); +x_205 = 0; +x_185 = x_205; +x_186 = x_204; +goto block_199; +} +else +{ +lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; uint8_t x_210; +x_206 = lean_ctor_get(x_200, 1); +lean_inc(x_206); +lean_dec(x_200); +x_207 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_184, x_10, x_11, x_12, x_13, x_206); +x_208 = lean_ctor_get(x_207, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +lean_dec(x_207); +x_210 = lean_unbox(x_208); +lean_dec(x_208); +x_185 = x_210; +x_186 = x_209; +goto block_199; +} +block_199: +{ +lean_object* x_187; +x_187 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_185 == 0) +{ +lean_object* x_188; lean_object* x_189; +lean_dec(x_42); +x_188 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_189 = lean_apply_6(x_187, x_188, x_10, x_11, x_12, x_13, x_186); +x_21 = x_189; +goto block_38; +} +else +{ +lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; +x_190 = l_Lean_indentExpr(x_42); +x_191 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_192 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_192, 0, x_191); +lean_ctor_set(x_192, 1, x_190); +x_193 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_194 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_194, 0, x_192); +lean_ctor_set(x_194, 1, x_193); +x_195 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_184, x_194, x_10, x_11, x_12, x_13, x_186); +x_196 = lean_ctor_get(x_195, 0); +lean_inc(x_196); +x_197 = lean_ctor_get(x_195, 1); +lean_inc(x_197); +lean_dec(x_195); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_198 = lean_apply_6(x_187, x_196, x_10, x_11, x_12, x_13, x_197); +x_21 = x_198; +goto block_38; +} +} +} +case 6: +{ +lean_object* x_211; lean_object* x_212; uint8_t x_213; lean_object* x_214; lean_object* x_228; lean_object* x_229; lean_object* x_230; uint8_t x_231; +x_211 = lean_ctor_get(x_41, 1); +lean_inc(x_211); +lean_dec(x_41); +x_212 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_228 = lean_st_ref_get(x_13, x_211); +x_229 = lean_ctor_get(x_228, 0); +lean_inc(x_229); +x_230 = lean_ctor_get(x_229, 3); +lean_inc(x_230); +lean_dec(x_229); +x_231 = lean_ctor_get_uint8(x_230, sizeof(void*)*1); +lean_dec(x_230); +if (x_231 == 0) +{ +lean_object* x_232; uint8_t x_233; +x_232 = lean_ctor_get(x_228, 1); +lean_inc(x_232); +lean_dec(x_228); +x_233 = 0; +x_213 = x_233; +x_214 = x_232; +goto block_227; +} +else +{ +lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; uint8_t x_238; +x_234 = lean_ctor_get(x_228, 1); +lean_inc(x_234); +lean_dec(x_228); +x_235 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_212, x_10, x_11, x_12, x_13, x_234); +x_236 = lean_ctor_get(x_235, 0); +lean_inc(x_236); +x_237 = lean_ctor_get(x_235, 1); +lean_inc(x_237); +lean_dec(x_235); +x_238 = lean_unbox(x_236); +lean_dec(x_236); +x_213 = x_238; +x_214 = x_237; +goto block_227; +} +block_227: +{ +lean_object* x_215; +x_215 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_213 == 0) +{ +lean_object* x_216; lean_object* x_217; +lean_dec(x_42); +x_216 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_217 = lean_apply_6(x_215, x_216, x_10, x_11, x_12, x_13, x_214); +x_21 = x_217; +goto block_38; +} +else +{ +lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; +x_218 = l_Lean_indentExpr(x_42); +x_219 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_220 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_220, 0, x_219); +lean_ctor_set(x_220, 1, x_218); +x_221 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_222 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_222, 0, x_220); +lean_ctor_set(x_222, 1, x_221); +x_223 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_212, x_222, x_10, x_11, x_12, x_13, x_214); +x_224 = lean_ctor_get(x_223, 0); +lean_inc(x_224); +x_225 = lean_ctor_get(x_223, 1); +lean_inc(x_225); +lean_dec(x_223); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_226 = lean_apply_6(x_215, x_224, x_10, x_11, x_12, x_13, x_225); +x_21 = x_226; +goto block_38; +} +} +} +case 7: +{ +lean_object* x_239; lean_object* x_240; uint8_t x_241; lean_object* x_242; lean_object* x_256; lean_object* x_257; lean_object* x_258; uint8_t x_259; +x_239 = lean_ctor_get(x_41, 1); +lean_inc(x_239); +lean_dec(x_41); +x_240 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_256 = lean_st_ref_get(x_13, x_239); +x_257 = lean_ctor_get(x_256, 0); +lean_inc(x_257); +x_258 = lean_ctor_get(x_257, 3); +lean_inc(x_258); +lean_dec(x_257); +x_259 = lean_ctor_get_uint8(x_258, sizeof(void*)*1); +lean_dec(x_258); +if (x_259 == 0) +{ +lean_object* x_260; uint8_t x_261; +x_260 = lean_ctor_get(x_256, 1); +lean_inc(x_260); +lean_dec(x_256); +x_261 = 0; +x_241 = x_261; +x_242 = x_260; +goto block_255; +} +else +{ +lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; uint8_t x_266; +x_262 = lean_ctor_get(x_256, 1); +lean_inc(x_262); +lean_dec(x_256); +x_263 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_240, x_10, x_11, x_12, x_13, x_262); +x_264 = lean_ctor_get(x_263, 0); +lean_inc(x_264); +x_265 = lean_ctor_get(x_263, 1); +lean_inc(x_265); +lean_dec(x_263); +x_266 = lean_unbox(x_264); +lean_dec(x_264); +x_241 = x_266; +x_242 = x_265; +goto block_255; +} +block_255: +{ +lean_object* x_243; +x_243 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_241 == 0) +{ +lean_object* x_244; lean_object* x_245; +lean_dec(x_42); +x_244 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_245 = lean_apply_6(x_243, x_244, x_10, x_11, x_12, x_13, x_242); +x_21 = x_245; +goto block_38; +} +else +{ +lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; +x_246 = l_Lean_indentExpr(x_42); +x_247 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_248 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_248, 0, x_247); +lean_ctor_set(x_248, 1, x_246); +x_249 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_250 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_250, 0, x_248); +lean_ctor_set(x_250, 1, x_249); +x_251 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_240, x_250, x_10, x_11, x_12, x_13, x_242); +x_252 = lean_ctor_get(x_251, 0); +lean_inc(x_252); +x_253 = lean_ctor_get(x_251, 1); +lean_inc(x_253); +lean_dec(x_251); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_254 = lean_apply_6(x_243, x_252, x_10, x_11, x_12, x_13, x_253); +x_21 = x_254; +goto block_38; +} +} +} +case 8: +{ +lean_object* x_267; lean_object* x_268; uint8_t x_269; lean_object* x_270; lean_object* x_284; lean_object* x_285; lean_object* x_286; uint8_t x_287; +x_267 = lean_ctor_get(x_41, 1); +lean_inc(x_267); +lean_dec(x_41); +x_268 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_284 = lean_st_ref_get(x_13, x_267); +x_285 = lean_ctor_get(x_284, 0); +lean_inc(x_285); +x_286 = lean_ctor_get(x_285, 3); +lean_inc(x_286); +lean_dec(x_285); +x_287 = lean_ctor_get_uint8(x_286, sizeof(void*)*1); +lean_dec(x_286); +if (x_287 == 0) +{ +lean_object* x_288; uint8_t x_289; +x_288 = lean_ctor_get(x_284, 1); +lean_inc(x_288); +lean_dec(x_284); +x_289 = 0; +x_269 = x_289; +x_270 = x_288; +goto block_283; +} +else +{ +lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; uint8_t x_294; +x_290 = lean_ctor_get(x_284, 1); +lean_inc(x_290); +lean_dec(x_284); +x_291 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_268, x_10, x_11, x_12, x_13, x_290); +x_292 = lean_ctor_get(x_291, 0); +lean_inc(x_292); +x_293 = lean_ctor_get(x_291, 1); +lean_inc(x_293); +lean_dec(x_291); +x_294 = lean_unbox(x_292); +lean_dec(x_292); +x_269 = x_294; +x_270 = x_293; +goto block_283; +} +block_283: +{ +lean_object* x_271; +x_271 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_269 == 0) +{ +lean_object* x_272; lean_object* x_273; +lean_dec(x_42); +x_272 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_273 = lean_apply_6(x_271, x_272, x_10, x_11, x_12, x_13, x_270); +x_21 = x_273; +goto block_38; +} +else +{ +lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; +x_274 = l_Lean_indentExpr(x_42); +x_275 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_276 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_276, 0, x_275); +lean_ctor_set(x_276, 1, x_274); +x_277 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_278 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_278, 0, x_276); +lean_ctor_set(x_278, 1, x_277); +x_279 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_268, x_278, x_10, x_11, x_12, x_13, x_270); +x_280 = lean_ctor_get(x_279, 0); +lean_inc(x_280); +x_281 = lean_ctor_get(x_279, 1); +lean_inc(x_281); +lean_dec(x_279); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_282 = lean_apply_6(x_271, x_280, x_10, x_11, x_12, x_13, x_281); +x_21 = x_282; +goto block_38; +} +} +} +case 9: +{ +lean_object* x_295; lean_object* x_296; uint8_t x_297; lean_object* x_298; lean_object* x_312; lean_object* x_313; lean_object* x_314; uint8_t x_315; +x_295 = lean_ctor_get(x_41, 1); +lean_inc(x_295); +lean_dec(x_41); +x_296 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_312 = lean_st_ref_get(x_13, x_295); +x_313 = lean_ctor_get(x_312, 0); +lean_inc(x_313); +x_314 = lean_ctor_get(x_313, 3); +lean_inc(x_314); +lean_dec(x_313); +x_315 = lean_ctor_get_uint8(x_314, sizeof(void*)*1); +lean_dec(x_314); +if (x_315 == 0) +{ +lean_object* x_316; uint8_t x_317; +x_316 = lean_ctor_get(x_312, 1); +lean_inc(x_316); +lean_dec(x_312); +x_317 = 0; +x_297 = x_317; +x_298 = x_316; +goto block_311; +} +else +{ +lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; uint8_t x_322; +x_318 = lean_ctor_get(x_312, 1); +lean_inc(x_318); +lean_dec(x_312); +x_319 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_296, x_10, x_11, x_12, x_13, x_318); +x_320 = lean_ctor_get(x_319, 0); +lean_inc(x_320); +x_321 = lean_ctor_get(x_319, 1); +lean_inc(x_321); +lean_dec(x_319); +x_322 = lean_unbox(x_320); +lean_dec(x_320); +x_297 = x_322; +x_298 = x_321; +goto block_311; +} +block_311: +{ +lean_object* x_299; +x_299 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_297 == 0) +{ +lean_object* x_300; lean_object* x_301; +lean_dec(x_42); +x_300 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_301 = lean_apply_6(x_299, x_300, x_10, x_11, x_12, x_13, x_298); +x_21 = x_301; +goto block_38; +} +else +{ +lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; +x_302 = l_Lean_indentExpr(x_42); +x_303 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_304 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_304, 0, x_303); +lean_ctor_set(x_304, 1, x_302); +x_305 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_306 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_306, 0, x_304); +lean_ctor_set(x_306, 1, x_305); +x_307 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_296, x_306, x_10, x_11, x_12, x_13, x_298); +x_308 = lean_ctor_get(x_307, 0); +lean_inc(x_308); +x_309 = lean_ctor_get(x_307, 1); +lean_inc(x_309); +lean_dec(x_307); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_310 = lean_apply_6(x_299, x_308, x_10, x_11, x_12, x_13, x_309); +x_21 = x_310; +goto block_38; +} +} +} +case 10: +{ +lean_object* x_323; lean_object* x_324; uint8_t x_325; lean_object* x_326; lean_object* x_340; lean_object* x_341; lean_object* x_342; uint8_t x_343; +x_323 = lean_ctor_get(x_41, 1); +lean_inc(x_323); +lean_dec(x_41); +x_324 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_340 = lean_st_ref_get(x_13, x_323); +x_341 = lean_ctor_get(x_340, 0); +lean_inc(x_341); +x_342 = lean_ctor_get(x_341, 3); +lean_inc(x_342); +lean_dec(x_341); +x_343 = lean_ctor_get_uint8(x_342, sizeof(void*)*1); +lean_dec(x_342); +if (x_343 == 0) +{ +lean_object* x_344; uint8_t x_345; +x_344 = lean_ctor_get(x_340, 1); +lean_inc(x_344); +lean_dec(x_340); +x_345 = 0; +x_325 = x_345; +x_326 = x_344; +goto block_339; +} +else +{ +lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; uint8_t x_350; +x_346 = lean_ctor_get(x_340, 1); +lean_inc(x_346); +lean_dec(x_340); +x_347 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_324, x_10, x_11, x_12, x_13, x_346); +x_348 = lean_ctor_get(x_347, 0); +lean_inc(x_348); +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +lean_dec(x_347); +x_350 = lean_unbox(x_348); +lean_dec(x_348); +x_325 = x_350; +x_326 = x_349; +goto block_339; +} +block_339: +{ +lean_object* x_327; +x_327 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_325 == 0) +{ +lean_object* x_328; lean_object* x_329; +lean_dec(x_42); +x_328 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_329 = lean_apply_6(x_327, x_328, x_10, x_11, x_12, x_13, x_326); +x_21 = x_329; +goto block_38; +} +else +{ +lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; +x_330 = l_Lean_indentExpr(x_42); +x_331 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2; +x_332 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_332, 0, x_331); +lean_ctor_set(x_332, 1, x_330); +x_333 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_334 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_334, 0, x_332); +lean_ctor_set(x_334, 1, x_333); +x_335 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_324, x_334, x_10, x_11, x_12, x_13, x_326); +x_336 = lean_ctor_get(x_335, 0); +lean_inc(x_336); +x_337 = lean_ctor_get(x_335, 1); +lean_inc(x_337); +lean_dec(x_335); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_338 = lean_apply_6(x_327, x_336, x_10, x_11, x_12, x_13, x_337); +x_21 = x_338; +goto block_38; +} +} +} +default: +{ +lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_object* x_354; uint8_t x_355; +x_351 = lean_ctor_get(x_41, 1); +lean_inc(x_351); +lean_dec(x_41); +x_352 = lean_ctor_get(x_42, 1); +lean_inc(x_352); +x_353 = lean_ctor_get(x_42, 2); +lean_inc(x_353); +lean_dec(x_42); +x_354 = lean_nat_add(x_3, x_352); +x_355 = lean_nat_dec_eq(x_354, x_8); +lean_dec(x_354); +if (x_355 == 0) +{ +lean_object* x_356; uint8_t x_357; lean_object* x_358; lean_object* x_384; lean_object* x_385; lean_object* x_386; uint8_t x_387; +lean_dec(x_353); +x_356 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_384 = lean_st_ref_get(x_13, x_351); +x_385 = lean_ctor_get(x_384, 0); +lean_inc(x_385); +x_386 = lean_ctor_get(x_385, 3); +lean_inc(x_386); +lean_dec(x_385); +x_387 = lean_ctor_get_uint8(x_386, sizeof(void*)*1); +lean_dec(x_386); +if (x_387 == 0) +{ +lean_object* x_388; uint8_t x_389; +x_388 = lean_ctor_get(x_384, 1); +lean_inc(x_388); +lean_dec(x_384); +x_389 = 0; +x_357 = x_389; +x_358 = x_388; +goto block_383; +} +else +{ +lean_object* x_390; lean_object* x_391; lean_object* x_392; lean_object* x_393; uint8_t x_394; +x_390 = lean_ctor_get(x_384, 1); +lean_inc(x_390); +lean_dec(x_384); +x_391 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_356, x_10, x_11, x_12, x_13, x_390); +x_392 = lean_ctor_get(x_391, 0); +lean_inc(x_392); +x_393 = lean_ctor_get(x_391, 1); +lean_inc(x_393); +lean_dec(x_391); +x_394 = lean_unbox(x_392); +lean_dec(x_392); +x_357 = x_394; +x_358 = x_393; +goto block_383; +} +block_383: +{ +lean_object* x_359; +x_359 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9; +if (x_357 == 0) +{ +lean_object* x_360; lean_object* x_361; +lean_dec(x_352); +x_360 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_361 = lean_apply_6(x_359, x_360, x_10, x_11, x_12, x_13, x_358); +x_21 = x_361; +goto block_38; +} +else +{ +lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_object* x_376; lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; +lean_inc(x_8); +x_362 = l_Nat_repr(x_8); +x_363 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_363, 0, x_362); +x_364 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_364, 0, x_363); +x_365 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11; +x_366 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_366, 0, x_365); +lean_ctor_set(x_366, 1, x_364); +x_367 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4; +x_368 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_368, 0, x_366); +lean_ctor_set(x_368, 1, x_367); +x_369 = l_Nat_repr(x_352); +x_370 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_370, 0, x_369); +x_371 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_371, 0, x_370); +x_372 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_372, 0, x_368); +lean_ctor_set(x_372, 1, x_371); +x_373 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6; +x_374 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_374, 0, x_372); +lean_ctor_set(x_374, 1, x_373); +lean_inc(x_2); +x_375 = l_Lean_indentExpr(x_2); +x_376 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_376, 0, x_374); +lean_ctor_set(x_376, 1, x_375); +x_377 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_378 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_378, 0, x_376); +lean_ctor_set(x_378, 1, x_377); +x_379 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_356, x_378, x_10, x_11, x_12, x_13, x_358); +x_380 = lean_ctor_get(x_379, 0); +lean_inc(x_380); +x_381 = lean_ctor_get(x_379, 1); +lean_inc(x_381); +lean_dec(x_379); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_382 = lean_apply_6(x_359, x_380, x_10, x_11, x_12, x_13, x_381); +x_21 = x_382; +goto block_38; +} +} +} +else +{ +lean_object* x_395; lean_object* x_396; +lean_dec(x_352); +x_395 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_5); +lean_inc(x_8); +lean_inc(x_1); +x_396 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2(x_353, x_1, x_8, x_5, x_395, x_10, x_11, x_12, x_13, x_351); +x_21 = x_396; +goto block_38; +} +} +} +} +else +{ +uint8_t x_397; +x_397 = !lean_is_exclusive(x_41); +if (x_397 == 0) +{ +x_21 = x_41; +goto block_38; +} +else +{ +lean_object* x_398; lean_object* x_399; lean_object* x_400; +x_398 = lean_ctor_get(x_41, 0); +x_399 = lean_ctor_get(x_41, 1); +lean_inc(x_399); +lean_inc(x_398); +lean_dec(x_41); +x_400 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_400, 0, x_398); +lean_ctor_set(x_400, 1, x_399); +x_21 = x_400; +goto block_38; +} +} +block_38: +{ +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +uint8_t x_23; +lean_dec(x_20); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_23 = !lean_is_exclusive(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_21, 0); +lean_dec(x_24); +x_25 = lean_ctor_get(x_22, 0); +lean_inc(x_25); +lean_dec(x_22); +lean_ctor_set(x_21, 0, x_25); +return x_21; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_dec(x_21); +x_27 = lean_ctor_get(x_22, 0); +lean_inc(x_27); +lean_dec(x_22); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_29 = lean_ctor_get(x_21, 1); +lean_inc(x_29); +lean_dec(x_21); +x_30 = lean_ctor_get(x_22, 0); +lean_inc(x_30); +lean_dec(x_22); +x_31 = lean_ctor_get(x_6, 2); +x_32 = lean_nat_add(x_8, x_31); +lean_dec(x_8); +x_7 = x_20; +x_8 = x_32; +x_9 = x_30; +x_14 = x_29; +goto _start; +} +} +else +{ +uint8_t x_34; +lean_dec(x_20); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_34 = !lean_is_exclusive(x_21); +if (x_34 == 0) +{ +return x_21; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_21, 0); +x_36 = lean_ctor_get(x_21, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_21); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; +} +} +} +} +else +{ +lean_object* x_401; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_401 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_401, 0, x_9); +lean_ctor_set(x_401, 1, x_14); +return x_401; +} +} +else +{ +lean_object* x_402; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_402 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_402, 0, x_9); +lean_ctor_set(x_402, 1, x_14); +return x_402; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; lean_object* x_8; lean_object* x_9; +x_7 = 1; +x_8 = lean_box(x_7); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_6); +return x_9; +} +} +static lean_object* _init_l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1___boxed), 6, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, uint8_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_28; lean_object* x_29; lean_object* x_68; +x_14 = l_Lean_Meta_saveState___rarg(x_10, x_11, x_12, x_13); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Lean_Meta_getResetPostponed(x_9, x_10, x_11, x_12, x_16); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_7); +lean_inc(x_3); +x_68 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3(x_1, x_2, x_3, x_4, x_7, x_6, x_5, x_3, x_7, x_9, x_10, x_11, x_12, x_19); +lean_dec(x_3); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_ctor_get(x_69, 0); +lean_inc(x_70); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_71 = lean_ctor_get(x_68, 1); +lean_inc(x_71); +lean_dec(x_68); +x_72 = l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1; +x_73 = lean_box(0); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_74 = lean_apply_6(x_72, x_73, x_9, x_10, x_11, x_12, x_71); +if (lean_obj_tag(x_74) == 0) +{ +lean_object* x_75; lean_object* x_76; uint8_t x_77; +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +lean_dec(x_74); +x_77 = lean_unbox(x_75); +lean_dec(x_75); +x_28 = x_77; +x_29 = x_76; +goto block_67; +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_18); +x_78 = lean_ctor_get(x_74, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_74, 1); +lean_inc(x_79); +lean_dec(x_74); +x_20 = x_78; +x_21 = x_79; +goto block_27; +} +} +else +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_68, 1); +lean_inc(x_80); +lean_dec(x_68); +x_81 = lean_ctor_get(x_70, 0); +lean_inc(x_81); +lean_dec(x_70); +x_82 = lean_unbox(x_81); +lean_dec(x_81); +x_28 = x_82; +x_29 = x_80; +goto block_67; +} +} +else +{ +lean_object* x_83; lean_object* x_84; +lean_dec(x_18); +x_83 = lean_ctor_get(x_68, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_68, 1); +lean_inc(x_84); +lean_dec(x_68); +x_20 = x_83; +x_21 = x_84; +goto block_27; +} +block_27: +{ +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Meta_SavedState_restore(x_15, x_9, x_10, x_11, x_12, x_21); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_15); +x_23 = !lean_is_exclusive(x_22); +if (x_23 == 0) +{ +lean_object* x_24; +x_24 = lean_ctor_get(x_22, 0); +lean_dec(x_24); +lean_ctor_set_tag(x_22, 1); +lean_ctor_set(x_22, 0, x_20); +return x_22; +} +else +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_ctor_get(x_22, 1); +lean_inc(x_25); +lean_dec(x_22); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_20); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +block_67: +{ +if (x_28 == 0) +{ +lean_object* x_30; uint8_t x_31; +lean_dec(x_18); +x_30 = l_Lean_Meta_SavedState_restore(x_15, x_9, x_10, x_11, x_12, x_29); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_15); +x_31 = !lean_is_exclusive(x_30); +if (x_31 == 0) +{ +lean_object* x_32; uint8_t x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_30, 0); +lean_dec(x_32); +x_33 = 0; +x_34 = lean_box(x_33); +lean_ctor_set(x_30, 0, x_34); +return x_30; +} +else +{ +lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; +x_35 = lean_ctor_get(x_30, 1); +lean_inc(x_35); +lean_dec(x_30); +x_36 = 0; +x_37 = lean_box(x_36); +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_35); +return x_38; +} +} +else +{ +uint8_t x_39; lean_object* x_40; +x_39 = 0; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_40 = l_Lean_Meta_processPostponed(x_8, x_39, x_9, x_10, x_11, x_12, x_29); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; uint8_t x_42; +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_unbox(x_41); +lean_dec(x_41); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; uint8_t x_45; +lean_dec(x_18); +x_43 = lean_ctor_get(x_40, 1); +lean_inc(x_43); +lean_dec(x_40); +x_44 = l_Lean_Meta_SavedState_restore(x_15, x_9, x_10, x_11, x_12, x_43); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_15); +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_dec(x_46); +x_47 = lean_box(x_39); +lean_ctor_set(x_44, 0, x_47); +return x_44; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); +lean_dec(x_44); +x_49 = lean_box(x_39); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_48); +return x_50; +} +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_15); +x_51 = lean_ctor_get(x_40, 1); +lean_inc(x_51); +lean_dec(x_40); +x_52 = l_Lean_Meta_getPostponed___rarg(x_10, x_11, x_12, x_51); +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); +x_54 = lean_ctor_get(x_52, 1); +lean_inc(x_54); +lean_dec(x_52); +x_55 = l_Std_PersistentArray_append___rarg(x_18, x_53); +x_56 = l_Lean_Meta_setPostponed(x_55, x_9, x_10, x_11, x_12, x_54); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_57 = !lean_is_exclusive(x_56); +if (x_57 == 0) +{ +lean_object* x_58; uint8_t x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_56, 0); +lean_dec(x_58); +x_59 = 1; +x_60 = lean_box(x_59); +lean_ctor_set(x_56, 0, x_60); +return x_56; +} +else +{ +lean_object* x_61; uint8_t x_62; lean_object* x_63; lean_object* x_64; +x_61 = lean_ctor_get(x_56, 1); +lean_inc(x_61); +lean_dec(x_56); +x_62 = 1; +x_63 = lean_box(x_62); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_61); +return x_64; +} +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_18); +x_65 = lean_ctor_get(x_40, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_40, 1); +lean_inc(x_66); +lean_dec(x_40); +x_20 = x_65; +x_21 = x_66; +goto block_27; +} +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("failed, insufficient number of arguments at"); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("failed, type is not a structure"); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_levelZero; +x_2 = l_Lean_mkSort(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Expr_getAppFn(x_2); +if (lean_obj_tag(x_8) == 4) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +lean_dec(x_8); +x_10 = lean_st_ref_get(x_6, x_7); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +if (lean_is_exclusive(x_10)) { + lean_ctor_release(x_10, 0); + lean_ctor_release(x_10, 1); + x_13 = x_10; +} else { + lean_dec_ref(x_10); + x_13 = lean_box(0); +} +x_14 = lean_ctor_get(x_11, 0); +lean_inc(x_14); +lean_dec(x_11); +x_15 = lean_environment_find(x_14, x_9); +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_16 = 0; +x_17 = lean_box(x_16); +if (lean_is_scalar(x_13)) { + x_18 = lean_alloc_ctor(0, 2, 0); +} else { + x_18 = x_13; +} +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_12); +return x_18; +} +else +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_15, 0); +lean_inc(x_19); +lean_dec(x_15); +if (lean_obj_tag(x_19) == 6) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +lean_dec(x_19); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 4); +lean_inc(x_22); +x_23 = lean_nat_add(x_21, x_22); +lean_dec(x_22); +x_24 = lean_unsigned_to_nat(0u); +x_25 = l_Lean_Expr_getAppNumArgsAux(x_2, x_24); +x_26 = lean_nat_dec_eq(x_23, x_25); +lean_dec(x_23); +if (x_26 == 0) +{ +lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; +lean_dec(x_25); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_1); +x_27 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_48 = lean_st_ref_get(x_6, x_12); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +lean_dec(x_49); +x_51 = lean_ctor_get_uint8(x_50, sizeof(void*)*1); +lean_dec(x_50); +if (x_51 == 0) +{ +lean_object* x_52; uint8_t x_53; +x_52 = lean_ctor_get(x_48, 1); +lean_inc(x_52); +lean_dec(x_48); +x_53 = 0; +x_28 = x_53; +x_29 = x_52; +goto block_47; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_54 = lean_ctor_get(x_48, 1); +lean_inc(x_54); +lean_dec(x_48); +x_55 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_27, x_3, x_4, x_5, x_6, x_54); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +x_58 = lean_unbox(x_56); +lean_dec(x_56); +x_28 = x_58; +x_29 = x_57; +goto block_47; +} +block_47: +{ +if (x_28 == 0) +{ +uint8_t x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_30 = 0; +x_31 = lean_box(x_30); +if (lean_is_scalar(x_13)) { + x_32 = lean_alloc_ctor(0, 2, 0); +} else { + x_32 = x_13; +} +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_29); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; +lean_dec(x_13); +x_33 = l_Lean_indentExpr(x_2); +x_34 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2; +x_35 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_33); +x_36 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_37 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +x_38 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_27, x_37, x_3, x_4, x_5, x_6, x_29); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_39 = !lean_is_exclusive(x_38); +if (x_39 == 0) +{ +lean_object* x_40; uint8_t x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_38, 0); +lean_dec(x_40); +x_41 = 0; +x_42 = lean_box(x_41); +lean_ctor_set(x_38, 0, x_42); +return x_38; +} +else +{ +lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46; +x_43 = lean_ctor_get(x_38, 1); +lean_inc(x_43); +lean_dec(x_38); +x_44 = 0; +x_45 = lean_box(x_44); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_43); +return x_46; +} +} +} +} +else +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_13); +x_59 = lean_ctor_get(x_20, 1); +lean_inc(x_59); +lean_dec(x_20); +x_60 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_59, x_3, x_4, x_5, x_6, x_12); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +if (lean_is_exclusive(x_60)) { + lean_ctor_release(x_60, 0); + lean_ctor_release(x_60, 1); + x_63 = x_60; +} else { + lean_dec_ref(x_60); + x_63 = lean_box(0); +} +x_64 = l_Lean_InductiveVal_nctors(x_61); +lean_dec(x_61); +x_65 = lean_unsigned_to_nat(1u); +x_66 = lean_nat_dec_eq(x_64, x_65); +lean_dec(x_64); +if (x_66 == 0) +{ +lean_object* x_67; uint8_t x_68; lean_object* x_69; lean_object* x_88; lean_object* x_89; lean_object* x_90; uint8_t x_91; +lean_dec(x_25); +lean_dec(x_21); +lean_dec(x_1); +x_67 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8; +x_88 = lean_st_ref_get(x_6, x_62); +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_89, 3); +lean_inc(x_90); +lean_dec(x_89); +x_91 = lean_ctor_get_uint8(x_90, sizeof(void*)*1); +lean_dec(x_90); +if (x_91 == 0) +{ +lean_object* x_92; uint8_t x_93; +x_92 = lean_ctor_get(x_88, 1); +lean_inc(x_92); +lean_dec(x_88); +x_93 = 0; +x_68 = x_93; +x_69 = x_92; +goto block_87; +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_94 = lean_ctor_get(x_88, 1); +lean_inc(x_94); +lean_dec(x_88); +x_95 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_67, x_3, x_4, x_5, x_6, x_94); +x_96 = lean_ctor_get(x_95, 0); +lean_inc(x_96); +x_97 = lean_ctor_get(x_95, 1); +lean_inc(x_97); +lean_dec(x_95); +x_98 = lean_unbox(x_96); +lean_dec(x_96); +x_68 = x_98; +x_69 = x_97; +goto block_87; +} +block_87: +{ +if (x_68 == 0) +{ +uint8_t x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_70 = 0; +x_71 = lean_box(x_70); +if (lean_is_scalar(x_63)) { + x_72 = lean_alloc_ctor(0, 2, 0); +} else { + x_72 = x_63; +} +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_69); +return x_72; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; +lean_dec(x_63); +x_73 = l_Lean_indentExpr(x_2); +x_74 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4; +x_75 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_75, 0, x_74); +lean_ctor_set(x_75, 1, x_73); +x_76 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; +x_77 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +x_78 = l_Lean_addTrace___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__1(x_67, x_77, x_3, x_4, x_5, x_6, x_69); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_79 = !lean_is_exclusive(x_78); +if (x_79 == 0) +{ +lean_object* x_80; uint8_t x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_78, 0); +lean_dec(x_80); +x_81 = 0; +x_82 = lean_box(x_81); +lean_ctor_set(x_78, 0, x_82); +return x_78; +} +else +{ +lean_object* x_83; uint8_t x_84; lean_object* x_85; lean_object* x_86; +x_83 = lean_ctor_get(x_78, 1); +lean_inc(x_83); +lean_dec(x_78); +x_84 = 0; +x_85 = lean_box(x_84); +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_85); +lean_ctor_set(x_86, 1, x_83); +return x_86; +} +} +} +} +else +{ +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; uint8_t x_106; lean_object* x_107; +lean_dec(x_63); +x_99 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; +lean_inc(x_25); +x_100 = lean_mk_array(x_25, x_99); +x_101 = lean_nat_sub(x_25, x_65); +lean_dec(x_25); +lean_inc(x_2); +x_102 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_2, x_100, x_101); +x_103 = lean_array_get_size(x_102); +lean_inc(x_103); +lean_inc(x_21); +x_104 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_104, 0, x_21); +lean_ctor_set(x_104, 1, x_103); +lean_ctor_set(x_104, 2, x_65); +x_105 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6; +x_106 = 1; +x_107 = l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4(x_1, x_2, x_21, x_102, x_103, x_104, x_105, x_106, x_3, x_4, x_5, x_6, x_62); +lean_dec(x_104); +lean_dec(x_102); +return x_107; +} +} +else +{ +uint8_t x_108; +lean_dec(x_25); +lean_dec(x_21); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_108 = !lean_is_exclusive(x_60); +if (x_108 == 0) +{ +return x_60; +} +else +{ +lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_109 = lean_ctor_get(x_60, 0); +x_110 = lean_ctor_get(x_60, 1); +lean_inc(x_110); +lean_inc(x_109); +lean_dec(x_60); +x_111 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_111, 0, x_109); +lean_ctor_set(x_111, 1, x_110); +return x_111; +} +} +} +} +else +{ +uint8_t x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_19); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_112 = 0; +x_113 = lean_box(x_112); +if (lean_is_scalar(x_13)) { + x_114 = lean_alloc_ctor(0, 2, 0); +} else { + x_114 = x_13; +} +lean_ctor_set(x_114, 0, x_113); +lean_ctor_set(x_114, 1, x_12); +return x_114; +} +} +} +else +{ +uint8_t x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_115 = 0; +x_116 = lean_box(x_115); +x_117 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_117, 0, x_116); +lean_ctor_set(x_117, 1, x_7); +return x_117; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_5); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; lean_object* x_15; +x_14 = lean_unbox(x_8); +lean_dec(x_8); +x_15 = l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_6); +lean_dec(x_4); +return x_15; +} +} static lean_object* _init_l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta___spec__1___closed__1() { _start: { @@ -4867,7 +7685,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; -x_1 = lean_mk_string("Meta"); +x_1 = lean_mk_string("assign"); return x_1; } } @@ -4875,7 +7693,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -4885,7 +7703,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; -x_1 = lean_mk_string("isDefEq"); +x_1 = lean_mk_string("checkTypes"); return x_1; } } @@ -4903,7 +7721,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; -x_1 = lean_mk_string("assign"); +x_1 = lean_mk_string("typeMismatch"); return x_1; } } @@ -4911,7 +7729,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__5; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -4921,68 +7739,67 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkType _start: { lean_object* x_1; -x_1 = lean_mk_string("checkTypes"); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___lambda__1___boxed), 6, 0); return x_1; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; -x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string(" : "); +return x_1; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("typeMismatch"); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; -x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string(" := "); +return x_1; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___lambda__1___boxed), 6, 0); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__12() { _start: { lean_object* x_1; -x_1 = lean_mk_string(""); +x_1 = lean_mk_string("final"); return x_1; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__12; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; +x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__12; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; } } static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__14() { _start: { lean_object* x_1; -x_1 = lean_mk_string(" : "); +x_1 = lean_mk_string("metavariable expected at "); return x_1; } } @@ -4995,58 +7812,6 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string(" := "); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("final"); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; -x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("metavariable expected at "); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -5167,7 +7932,7 @@ lean_object* x_1081; lean_object* x_1082; lean_object* x_1083; lean_object* x_10 x_1081 = lean_ctor_get(x_22, 1); lean_inc(x_1081); lean_dec(x_22); -x_1082 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8; +x_1082 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; x_1083 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_postponeIsLevelDefEq___spec__2(x_1082, x_3, x_4, x_5, x_6, x_1081); x_1084 = lean_ctor_get(x_1083, 0); lean_inc(x_1084); @@ -5292,7 +8057,7 @@ lean_object* x_142; lean_object* x_143; uint8_t x_144; lean_object* x_145; lean_ x_142 = lean_ctor_get(x_139, 1); lean_inc(x_142); lean_dec(x_139); -x_143 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_143 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_179 = lean_st_ref_get(x_6, x_142); x_180 = lean_ctor_get(x_179, 0); lean_inc(x_180); @@ -5332,7 +8097,7 @@ goto block_178; block_178: { lean_object* x_146; -x_146 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_146 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_144 == 0) { lean_object* x_147; lean_object* x_148; @@ -5375,11 +8140,11 @@ else lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; x_154 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_154, 0, x_1); -x_155 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_155 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_156 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_156, 0, x_155); lean_ctor_set(x_156, 1, x_154); -x_157 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_157 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_158 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_158, 0, x_156); lean_ctor_set(x_158, 1, x_157); @@ -5388,7 +8153,7 @@ lean_ctor_set(x_159, 0, x_126); x_160 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_160, 0, x_158); lean_ctor_set(x_160, 1, x_159); -x_161 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_161 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_162 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_162, 0, x_160); lean_ctor_set(x_162, 1, x_161); @@ -5453,7 +8218,7 @@ lean_dec(x_126); x_189 = lean_ctor_get(x_139, 1); lean_inc(x_189); lean_dec(x_139); -x_190 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_190 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_214 = lean_st_ref_get(x_6, x_189); x_215 = lean_ctor_get(x_214, 0); lean_inc(x_215); @@ -5518,11 +8283,11 @@ lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_inc(x_1); x_198 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_198, 0, x_1); -x_199 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_199 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_200 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_200, 0, x_199); lean_ctor_set(x_200, 1, x_198); -x_201 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_201 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_202 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_202, 0, x_200); lean_ctor_set(x_202, 1, x_201); @@ -5637,7 +8402,7 @@ lean_object* x_244; lean_object* x_245; uint8_t x_246; lean_object* x_247; lean_ x_244 = lean_ctor_get(x_241, 1); lean_inc(x_244); lean_dec(x_241); -x_245 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_245 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_281 = lean_st_ref_get(x_6, x_244); x_282 = lean_ctor_get(x_281, 0); lean_inc(x_282); @@ -5677,7 +8442,7 @@ goto block_280; block_280: { lean_object* x_248; -x_248 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_248 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_246 == 0) { lean_object* x_249; lean_object* x_250; @@ -5720,11 +8485,11 @@ else lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; x_256 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_256, 0, x_1); -x_257 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_257 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_258 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_258, 0, x_257); lean_ctor_set(x_258, 1, x_256); -x_259 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_259 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_260 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_260, 0, x_258); lean_ctor_set(x_260, 1, x_259); @@ -5733,7 +8498,7 @@ lean_ctor_set(x_261, 0, x_126); x_262 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_262, 0, x_260); lean_ctor_set(x_262, 1, x_261); -x_263 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_263 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_264 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_264, 0, x_262); lean_ctor_set(x_264, 1, x_263); @@ -5798,7 +8563,7 @@ lean_dec(x_126); x_291 = lean_ctor_get(x_241, 1); lean_inc(x_291); lean_dec(x_241); -x_292 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_292 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_316 = lean_st_ref_get(x_6, x_291); x_317 = lean_ctor_get(x_316, 0); lean_inc(x_317); @@ -5863,11 +8628,11 @@ lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_inc(x_1); x_300 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_300, 0, x_1); -x_301 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_301 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_302 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_302, 0, x_301); lean_ctor_set(x_302, 1, x_300); -x_303 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_303 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_304 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_304, 0, x_302); lean_ctor_set(x_304, 1, x_303); @@ -5967,7 +8732,7 @@ goto block_124; else { lean_object* x_332; uint8_t x_333; lean_object* x_334; lean_object* x_362; lean_object* x_363; lean_object* x_364; uint8_t x_365; -x_332 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_332 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_362 = lean_st_ref_get(x_6, x_41); x_363 = lean_ctor_get(x_362, 0); lean_inc(x_363); @@ -6007,7 +8772,7 @@ goto block_361; block_361: { lean_object* x_335; -x_335 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_335 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_333 == 0) { lean_object* x_336; lean_object* x_337; @@ -6048,11 +8813,11 @@ else lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_object* x_354; lean_object* x_355; x_343 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_343, 0, x_1); -x_344 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21; +x_344 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; x_345 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_345, 0, x_344); lean_ctor_set(x_345, 1, x_343); -x_346 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_346 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_347 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_347, 0, x_345); lean_ctor_set(x_347, 1, x_346); @@ -6061,7 +8826,7 @@ lean_ctor_set(x_348, 0, x_2); x_349 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_349, 0, x_347); lean_ctor_set(x_349, 1, x_348); -x_350 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_350 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_351 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_351, 0, x_349); lean_ctor_set(x_351, 1, x_350); @@ -6527,7 +9292,7 @@ lean_object* x_455; lean_object* x_456; uint8_t x_457; lean_object* x_458; lean_ x_455 = lean_ctor_get(x_452, 1); lean_inc(x_455); lean_dec(x_452); -x_456 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_456 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_492 = lean_st_ref_get(x_6, x_455); x_493 = lean_ctor_get(x_492, 0); lean_inc(x_493); @@ -6567,7 +9332,7 @@ goto block_491; block_491: { lean_object* x_459; -x_459 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_459 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_457 == 0) { lean_object* x_460; lean_object* x_461; @@ -6610,11 +9375,11 @@ else lean_object* x_467; lean_object* x_468; lean_object* x_469; lean_object* x_470; lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_object* x_474; lean_object* x_475; lean_object* x_476; lean_object* x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; lean_object* x_484; lean_object* x_485; x_467 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_467, 0, x_1); -x_468 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_468 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_469 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_469, 0, x_468); lean_ctor_set(x_469, 1, x_467); -x_470 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_470 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_471 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_471, 0, x_469); lean_ctor_set(x_471, 1, x_470); @@ -6623,7 +9388,7 @@ lean_ctor_set(x_472, 0, x_426); x_473 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_473, 0, x_471); lean_ctor_set(x_473, 1, x_472); -x_474 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_474 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_475 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_475, 0, x_473); lean_ctor_set(x_475, 1, x_474); @@ -6688,7 +9453,7 @@ lean_dec(x_426); x_502 = lean_ctor_get(x_452, 1); lean_inc(x_502); lean_dec(x_452); -x_503 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_503 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_527 = lean_st_ref_get(x_6, x_502); x_528 = lean_ctor_get(x_527, 0); lean_inc(x_528); @@ -6753,11 +9518,11 @@ lean_object* x_511; lean_object* x_512; lean_object* x_513; lean_object* x_514; lean_inc(x_1); x_511 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_511, 0, x_1); -x_512 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_512 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_513 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_513, 0, x_512); lean_ctor_set(x_513, 1, x_511); -x_514 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_514 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_515 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_515, 0, x_513); lean_ctor_set(x_515, 1, x_514); @@ -6856,7 +9621,7 @@ goto block_424; else { lean_object* x_543; uint8_t x_544; lean_object* x_545; lean_object* x_573; lean_object* x_574; lean_object* x_575; uint8_t x_576; -x_543 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_543 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_573 = lean_st_ref_get(x_6, x_376); x_574 = lean_ctor_get(x_573, 0); lean_inc(x_574); @@ -6896,7 +9661,7 @@ goto block_572; block_572: { lean_object* x_546; -x_546 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_546 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_544 == 0) { lean_object* x_547; lean_object* x_548; @@ -6937,11 +9702,11 @@ else lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; x_554 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_554, 0, x_1); -x_555 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21; +x_555 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; x_556 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_556, 0, x_555); lean_ctor_set(x_556, 1, x_554); -x_557 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_557 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_558 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_558, 0, x_556); lean_ctor_set(x_558, 1, x_557); @@ -6950,7 +9715,7 @@ lean_ctor_set(x_559, 0, x_2); x_560 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_560, 0, x_558); lean_ctor_set(x_560, 1, x_559); -x_561 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_561 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_562 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_562, 0, x_560); lean_ctor_set(x_562, 1, x_561); @@ -7301,7 +10066,7 @@ lean_object* x_671; lean_object* x_672; uint8_t x_673; lean_object* x_674; lean_ x_671 = lean_ctor_get(x_668, 1); lean_inc(x_671); lean_dec(x_668); -x_672 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_672 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_708 = lean_st_ref_get(x_6, x_671); x_709 = lean_ctor_get(x_708, 0); lean_inc(x_709); @@ -7341,7 +10106,7 @@ goto block_707; block_707: { lean_object* x_675; -x_675 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_675 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_673 == 0) { lean_object* x_676; lean_object* x_677; @@ -7384,11 +10149,11 @@ else lean_object* x_683; lean_object* x_684; lean_object* x_685; lean_object* x_686; lean_object* x_687; lean_object* x_688; lean_object* x_689; lean_object* x_690; lean_object* x_691; lean_object* x_692; lean_object* x_693; lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; lean_object* x_699; lean_object* x_700; lean_object* x_701; x_683 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_683, 0, x_1); -x_684 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_684 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_685 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_685, 0, x_684); lean_ctor_set(x_685, 1, x_683); -x_686 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_686 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_687 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_687, 0, x_685); lean_ctor_set(x_687, 1, x_686); @@ -7397,7 +10162,7 @@ lean_ctor_set(x_688, 0, x_642); x_689 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_689, 0, x_687); lean_ctor_set(x_689, 1, x_688); -x_690 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_690 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_691 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_691, 0, x_689); lean_ctor_set(x_691, 1, x_690); @@ -7462,7 +10227,7 @@ lean_dec(x_642); x_718 = lean_ctor_get(x_668, 1); lean_inc(x_718); lean_dec(x_668); -x_719 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_719 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_743 = lean_st_ref_get(x_6, x_718); x_744 = lean_ctor_get(x_743, 0); lean_inc(x_744); @@ -7527,11 +10292,11 @@ lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_inc(x_1); x_727 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_727, 0, x_1); -x_728 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_728 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_729 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_729, 0, x_728); lean_ctor_set(x_729, 1, x_727); -x_730 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_730 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_731 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_731, 0, x_729); lean_ctor_set(x_731, 1, x_730); @@ -7630,7 +10395,7 @@ goto block_640; else { lean_object* x_759; uint8_t x_760; lean_object* x_761; lean_object* x_789; lean_object* x_790; lean_object* x_791; uint8_t x_792; -x_759 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_759 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_789 = lean_st_ref_get(x_6, x_592); x_790 = lean_ctor_get(x_789, 0); lean_inc(x_790); @@ -7670,7 +10435,7 @@ goto block_788; block_788: { lean_object* x_762; -x_762 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_762 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_760 == 0) { lean_object* x_763; lean_object* x_764; @@ -7711,11 +10476,11 @@ else lean_object* x_770; lean_object* x_771; lean_object* x_772; lean_object* x_773; lean_object* x_774; lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; lean_object* x_781; lean_object* x_782; x_770 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_770, 0, x_1); -x_771 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21; +x_771 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; x_772 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_772, 0, x_771); lean_ctor_set(x_772, 1, x_770); -x_773 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_773 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_774 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_774, 0, x_772); lean_ctor_set(x_774, 1, x_773); @@ -7724,7 +10489,7 @@ lean_ctor_set(x_775, 0, x_2); x_776 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_776, 0, x_774); lean_ctor_set(x_776, 1, x_775); -x_777 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_777 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_778 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_778, 0, x_776); lean_ctor_set(x_778, 1, x_777); @@ -8019,7 +10784,7 @@ lean_object* x_840; lean_object* x_841; uint8_t x_842; lean_object* x_843; lean_ x_840 = lean_ctor_get(x_837, 1); lean_inc(x_840); lean_dec(x_837); -x_841 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_841 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_877 = lean_st_ref_get(x_6, x_840); x_878 = lean_ctor_get(x_877, 0); lean_inc(x_878); @@ -8060,7 +10825,7 @@ goto block_876; block_876: { lean_object* x_844; -x_844 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_844 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_842 == 0) { lean_object* x_845; lean_object* x_846; @@ -8106,11 +10871,11 @@ else lean_object* x_852; lean_object* x_853; lean_object* x_854; lean_object* x_855; lean_object* x_856; lean_object* x_857; lean_object* x_858; lean_object* x_859; lean_object* x_860; lean_object* x_861; lean_object* x_862; lean_object* x_863; lean_object* x_864; lean_object* x_865; lean_object* x_866; lean_object* x_867; lean_object* x_868; lean_object* x_869; lean_object* x_870; x_852 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_852, 0, x_1); -x_853 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_853 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_854 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_854, 0, x_853); lean_ctor_set(x_854, 1, x_852); -x_855 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_855 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_856 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_856, 0, x_854); lean_ctor_set(x_856, 1, x_855); @@ -8119,7 +10884,7 @@ lean_ctor_set(x_857, 0, x_824); x_858 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_858, 0, x_856); lean_ctor_set(x_858, 1, x_857); -x_859 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_859 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_860 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_860, 0, x_858); lean_ctor_set(x_860, 1, x_859); @@ -8187,7 +10952,7 @@ lean_dec(x_824); x_888 = lean_ctor_get(x_837, 1); lean_inc(x_888); lean_dec(x_837); -x_889 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_889 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_913 = lean_st_ref_get(x_6, x_888); x_914 = lean_ctor_get(x_913, 0); lean_inc(x_914); @@ -8250,11 +11015,11 @@ lean_object* x_897; lean_object* x_898; lean_object* x_899; lean_object* x_900; lean_inc(x_1); x_897 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_897, 0, x_1); -x_898 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_898 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_899 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_899, 0, x_898); lean_ctor_set(x_899, 1, x_897); -x_900 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_900 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_901 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_901, 0, x_899); lean_ctor_set(x_901, 1, x_900); @@ -8363,7 +11128,7 @@ lean_object* x_944; lean_object* x_945; uint8_t x_946; lean_object* x_947; lean_ x_944 = lean_ctor_get(x_941, 1); lean_inc(x_944); lean_dec(x_941); -x_945 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__10; +x_945 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; x_981 = lean_st_ref_get(x_6, x_944); x_982 = lean_ctor_get(x_981, 0); lean_inc(x_982); @@ -8404,7 +11169,7 @@ goto block_980; block_980: { lean_object* x_948; -x_948 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_948 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_946 == 0) { lean_object* x_949; lean_object* x_950; @@ -8450,11 +11215,11 @@ else lean_object* x_956; lean_object* x_957; lean_object* x_958; lean_object* x_959; lean_object* x_960; lean_object* x_961; lean_object* x_962; lean_object* x_963; lean_object* x_964; lean_object* x_965; lean_object* x_966; lean_object* x_967; lean_object* x_968; lean_object* x_969; lean_object* x_970; lean_object* x_971; lean_object* x_972; lean_object* x_973; lean_object* x_974; x_956 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_956, 0, x_1); -x_957 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_957 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_958 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_958, 0, x_957); lean_ctor_set(x_958, 1, x_956); -x_959 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_959 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_960 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_960, 0, x_958); lean_ctor_set(x_960, 1, x_959); @@ -8463,7 +11228,7 @@ lean_ctor_set(x_961, 0, x_824); x_962 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_962, 0, x_960); lean_ctor_set(x_962, 1, x_961); -x_963 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_963 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_964 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_964, 0, x_962); lean_ctor_set(x_964, 1, x_963); @@ -8531,7 +11296,7 @@ lean_dec(x_824); x_992 = lean_ctor_get(x_941, 1); lean_inc(x_992); lean_dec(x_941); -x_993 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_993 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_1017 = lean_st_ref_get(x_6, x_992); x_1018 = lean_ctor_get(x_1017, 0); lean_inc(x_1018); @@ -8594,11 +11359,11 @@ lean_object* x_1001; lean_object* x_1002; lean_object* x_1003; lean_object* x_10 lean_inc(x_1); x_1001 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_1001, 0, x_1); -x_1002 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_1002 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_1003 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1003, 0, x_1002); lean_ctor_set(x_1003, 1, x_1001); -x_1004 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_1004 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_1005 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1005, 0, x_1003); lean_ctor_set(x_1005, 1, x_1004); @@ -8686,7 +11451,7 @@ goto block_822; else { lean_object* x_1034; uint8_t x_1035; lean_object* x_1036; lean_object* x_1064; lean_object* x_1065; lean_object* x_1066; uint8_t x_1067; -x_1034 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19; +x_1034 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; x_1064 = lean_st_ref_get(x_6, x_802); x_1065 = lean_ctor_get(x_1064, 0); lean_inc(x_1065); @@ -8727,7 +11492,7 @@ goto block_1063; block_1063: { lean_object* x_1037; -x_1037 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; +x_1037 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__7; if (x_1035 == 0) { lean_object* x_1038; lean_object* x_1039; @@ -8771,11 +11536,11 @@ else lean_object* x_1045; lean_object* x_1046; lean_object* x_1047; lean_object* x_1048; lean_object* x_1049; lean_object* x_1050; lean_object* x_1051; lean_object* x_1052; lean_object* x_1053; lean_object* x_1054; lean_object* x_1055; lean_object* x_1056; lean_object* x_1057; x_1045 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_1045, 0, x_1); -x_1046 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21; +x_1046 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; x_1047 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1047, 0, x_1046); lean_ctor_set(x_1047, 1, x_1045); -x_1048 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_1048 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_1049 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1049, 0, x_1047); lean_ctor_set(x_1049, 1, x_1048); @@ -8784,7 +11549,7 @@ lean_ctor_set(x_1050, 0, x_2); x_1051 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1051, 0, x_1049); lean_ctor_set(x_1051, 1, x_1050); -x_1052 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_1052 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_1053 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_1053, 0, x_1051); lean_ctor_set(x_1053, 1, x_1052); @@ -8831,7 +11596,7 @@ goto block_822; block_813: { lean_object* x_805; lean_object* x_806; uint8_t x_807; -x_805 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8; +x_805 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; x_806 = l___private_Lean_Util_Trace_0__Lean_addNode___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_processPostponedStep___spec__12(x_801, x_805, x_799, x_3, x_4, x_5, x_6, x_804); lean_dec(x_6); lean_dec(x_5); @@ -8863,7 +11628,7 @@ return x_812; block_822: { lean_object* x_816; lean_object* x_817; uint8_t x_818; -x_816 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__8; +x_816 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; x_817 = l___private_Lean_Util_Trace_0__Lean_addNode___at___private_Lean_Meta_LevelDefEq_0__Lean_Meta_processPostponedStep___spec__12(x_801, x_816, x_799, x_3, x_4, x_5, x_6, x_815); lean_dec(x_6); lean_dec(x_5); @@ -9048,28 +11813,16 @@ return x_2; static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = lean_box(0); -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2() { -_start: -{ lean_object* x_1; x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___lambda__1___boxed), 1, 0); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3() { +static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__1; x_2 = lean_box(0); x_3 = lean_apply_1(x_1, x_2); return x_3; @@ -9109,7 +11862,7 @@ x_20 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_18); lean_ctor_set(x_20, 2, x_8); -x_21 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__1; +x_21 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6; x_22 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1(x_10, x_21, x_20, x_18, x_19, x_21); lean_dec(x_20); x_23 = lean_ctor_get(x_22, 0); @@ -9118,7 +11871,7 @@ lean_dec(x_22); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; lean_object* x_25; -x_24 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3; +x_24 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2; x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_6); @@ -12029,7 +14782,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaF _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -12236,7 +14989,7 @@ lean_ctor_set(x_43, 0, x_2); x_44 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_44, 0, x_42); lean_ctor_set(x_44, 1, x_43); -x_45 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_45 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_46 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_46, 0, x_44); lean_ctor_set(x_46, 1, x_45); @@ -12319,7 +15072,7 @@ lean_dec(x_5); return x_10; } } -static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1() { +static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1() { _start: { lean_object* x_1; @@ -12327,26 +15080,26 @@ x_1 = lean_mk_string("checkAssignment"); return x_1; } } -static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2() { +static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1; +x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2; +x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2; x_3 = l_Lean_registerInternalExceptionId(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1() { +static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1() { _start: { lean_object* x_1; @@ -12354,21 +15107,21 @@ x_1 = lean_mk_string("outOfScope"); return x_1; } } -static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2() { +static lean_object* _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1; +x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2; +x_2 = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2; x_3 = l_Lean_registerInternalExceptionId(x_2, x_1); return x_3; } @@ -12818,7 +15571,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_CheckAssig _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_9 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_9 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_10 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_1); @@ -12848,7 +15601,7 @@ lean_dec(x_22); x_24 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_24, 0, x_18); lean_ctor_set(x_24, 1, x_23); -x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_26 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_26, 0, x_24); lean_ctor_set(x_26, 1, x_25); @@ -13305,7 +16058,7 @@ lean_ctor_set(x_29, 1, x_28); x_30 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_30, 0, x_29); lean_ctor_set(x_30, 1, x_14); -x_31 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_31 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_32 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -13364,7 +16117,7 @@ lean_ctor_set(x_51, 1, x_50); x_52 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_52, 0, x_51); lean_ctor_set(x_52, 1, x_14); -x_53 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_53 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_54 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_54, 0, x_52); lean_ctor_set(x_54, 1, x_53); @@ -13437,7 +16190,7 @@ lean_ctor_set(x_76, 1, x_75); x_77 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_77, 0, x_76); lean_ctor_set(x_77, 1, x_14); -x_78 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_78 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_79 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_79, 0, x_77); lean_ctor_set(x_79, 1, x_78); @@ -13496,7 +16249,7 @@ static lean_object* _init_l_Lean_Meta_CheckAssignment_checkFVar___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_2 = l_Lean_Meta_CheckAssignment_checkFVar___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -27737,22 +30490,13 @@ goto block_2290; } } } -static lean_object* _init_l_Lean_Meta_CheckAssignment_checkApp___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_levelZero; -x_2 = l_Lean_mkSort(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Meta_CheckAssignment_checkApp(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_9 = lean_unsigned_to_nat(0u); x_10 = l_Lean_Expr_getAppNumArgsAux(x_1, x_9); -x_11 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_11 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_10); x_12 = lean_mk_array(x_10, x_11); x_13 = lean_unsigned_to_nat(1u); @@ -34651,7 +37395,7 @@ static lean_object* _init_l_Lean_Meta_CheckAssignment_checkMVar___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_2 = l_Lean_Meta_CheckAssignment_checkMVar___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -34669,7 +37413,7 @@ static lean_object* _init_l_Lean_Meta_CheckAssignment_checkMVar___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_2 = l_Lean_Meta_CheckAssignment_checkMVar___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -37709,7 +40453,7 @@ lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13 x_9 = lean_array_get_size(x_2); x_10 = lean_usize_of_nat(x_9); x_11 = 0; -x_12 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__1; +x_12 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); @@ -38413,7 +41157,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAs _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignmentFOApprox_loop___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -38522,7 +41266,7 @@ lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean lean_inc(x_1); x_26 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_26, 0, x_1); -x_27 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_27 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_28 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_28, 0, x_27); lean_ctor_set(x_28, 1, x_26); @@ -38539,7 +41283,7 @@ lean_dec(x_33); x_35 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_35, 0, x_30); lean_ctor_set(x_35, 1, x_34); -x_36 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_36 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_37 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_37, 0, x_35); lean_ctor_set(x_37, 1, x_36); @@ -38804,7 +41548,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignCon _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_assignConst___lambda__2___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -38996,11 +41740,11 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean lean_inc(x_4); x_46 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_46, 0, x_4); -x_47 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_47 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_48 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_48, 0, x_47); lean_ctor_set(x_48, 1, x_46); -x_49 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_49 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_50 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_50, 0, x_48); lean_ctor_set(x_50, 1, x_49); @@ -39653,11 +42397,11 @@ lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean lean_inc(x_4); x_56 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_56, 0, x_4); -x_57 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_57 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_58 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_58, 0, x_57); lean_ctor_set(x_58, 1, x_56); -x_59 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_59 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_60 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_60, 0, x_58); lean_ctor_set(x_60, 1, x_59); @@ -39856,7 +42600,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAs _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -40054,7 +42798,7 @@ block_66: if (x_41 == 0) { lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_43 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_44 = lean_box(0); x_45 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___lambda__1(x_4, x_39, x_14, x_1, x_2, x_43, x_5, x_44, x_6, x_7, x_8, x_9, x_42); return x_45; @@ -40065,7 +42809,7 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean lean_inc(x_1); x_46 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_46, 0, x_1); -x_47 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_47 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_48 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_48, 0, x_47); lean_ctor_set(x_48, 1, x_46); @@ -40082,7 +42826,7 @@ lean_dec(x_53); x_55 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_55, 0, x_50); lean_ctor_set(x_55, 1, x_54); -x_56 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_56 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_57 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_57, 0, x_55); lean_ctor_set(x_57, 1, x_56); @@ -40101,7 +42845,7 @@ lean_inc(x_62); x_63 = lean_ctor_get(x_61, 1); lean_inc(x_63); lean_dec(x_61); -x_64 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_64 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_65 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAssignment_process___lambda__1(x_4, x_39, x_14, x_1, x_2, x_64, x_5, x_62, x_6, x_7, x_8, x_9, x_63); lean_dec(x_62); return x_65; @@ -40756,7 +43500,7 @@ lean_inc(x_13); lean_dec(x_11); x_14 = lean_unsigned_to_nat(0u); x_15 = l_Lean_Expr_getAppNumArgsAux(x_1, x_14); -x_16 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_16 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_15); x_17 = lean_mk_array(x_15, x_16); x_18 = lean_unsigned_to_nat(1u); @@ -40801,7 +43545,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_processAss _start: { lean_object* x_8; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_418; lean_object* x_419; lean_object* x_420; uint8_t x_421; -x_21 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_21 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_418 = lean_st_ref_get(x_6, x_7); x_419 = lean_ctor_get(x_418, 0); lean_inc(x_419); @@ -41318,11 +44062,11 @@ lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_inc(x_1); x_131 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_131, 0, x_1); -x_132 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_132 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_133 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_133, 0, x_132); lean_ctor_set(x_133, 1, x_131); -x_134 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_134 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_135 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_135, 0, x_133); lean_ctor_set(x_135, 1, x_134); @@ -41634,11 +44378,11 @@ lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_inc(x_1); x_221 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_221, 0, x_1); -x_222 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_222 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_223 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_223, 0, x_222); lean_ctor_set(x_223, 1, x_221); -x_224 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_224 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_225 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_225, 0, x_223); lean_ctor_set(x_225, 1, x_224); @@ -41972,11 +44716,11 @@ lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_inc(x_1); x_316 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_316, 0, x_1); -x_317 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_317 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_318 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_318, 0, x_317); lean_ctor_set(x_318, 1, x_316); -x_319 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_319 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_320 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_320, 0, x_318); lean_ctor_set(x_320, 1, x_319); @@ -42231,11 +44975,11 @@ lean_dec(x_370); lean_inc(x_1); x_391 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_391, 0, x_1); -x_392 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_392 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_393 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_393, 0, x_392); lean_ctor_set(x_393, 1, x_391); -x_394 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17; +x_394 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__11; x_395 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_395, 0, x_393); lean_ctor_set(x_395, 1, x_394); @@ -42859,7 +45603,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLe _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqLeft___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -43541,7 +46285,7 @@ lean_ctor_set(x_77, 0, x_2); x_78 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_78, 0, x_76); lean_ctor_set(x_78, 1, x_77); -x_79 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_79 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_80 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_80, 0, x_78); lean_ctor_set(x_80, 1, x_79); @@ -43925,7 +46669,7 @@ lean_ctor_set(x_77, 0, x_2); x_78 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_78, 0, x_76); lean_ctor_set(x_78, 1, x_77); -x_79 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_79 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_80 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_80, 0, x_78); lean_ctor_set(x_80, 1, x_79); @@ -43957,7 +46701,7 @@ _start: lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_231; lean_object* x_232; lean_object* x_233; uint8_t x_234; x_11 = lean_unsigned_to_nat(0u); x_12 = l_Lean_Expr_getAppNumArgsAux(x_1, x_11); -x_13 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_13 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_12); x_14 = lean_mk_array(x_12, x_13); x_15 = lean_unsigned_to_nat(1u); @@ -50117,7 +52861,7 @@ else lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; x_27 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_27, 0, x_2); -x_28 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_28 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_29 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); @@ -50463,7 +53207,7 @@ lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_dec(x_14); x_128 = lean_unsigned_to_nat(0u); x_129 = l_Lean_Expr_getAppNumArgsAux(x_1, x_128); -x_130 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_130 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_129); x_131 = lean_mk_array(x_129, x_130); x_132 = lean_unsigned_to_nat(1u); @@ -50609,7 +53353,7 @@ lean_inc(x_37); x_38 = lean_ctor_get(x_36, 1); lean_inc(x_38); lean_dec(x_36); -x_39 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_39 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_102 = lean_st_ref_get(x_6, x_38); x_103 = lean_ctor_get(x_102, 0); lean_inc(x_103); @@ -50667,7 +53411,7 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean lean_inc(x_1); x_46 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_46, 0, x_1); -x_47 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_47 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_48 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_48, 0, x_47); lean_ctor_set(x_48, 1, x_46); @@ -51450,7 +54194,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMV _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -51771,7 +54515,7 @@ x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__19; x_26 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_24); -x_27 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_27 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_28 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -51780,7 +54524,7 @@ lean_ctor_set(x_29, 0, x_22); x_30 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_30, 0, x_28); lean_ctor_set(x_30, 1, x_29); -x_31 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_31 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_32 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -52285,7 +55029,7 @@ x_37 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__19; x_38 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_36); -x_39 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_39 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_40 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_40, 0, x_38); lean_ctor_set(x_40, 1, x_39); @@ -52294,7 +55038,7 @@ lean_ctor_set(x_41, 0, x_34); x_42 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_42, 0, x_40); lean_ctor_set(x_42, 1, x_41); -x_43 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_43 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_44 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_44, 0, x_42); lean_ctor_set(x_44, 1, x_43); @@ -52592,7 +55336,7 @@ x_25 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_unstuckMVar___closed__19; x_26 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_24); -x_27 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15; +x_27 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__9; x_28 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -52601,7 +55345,7 @@ lean_ctor_set(x_29, 0, x_22); x_30 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_30, 0, x_28); lean_ctor_set(x_30, 1, x_29); -x_31 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_31 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_32 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -52702,7 +55446,7 @@ static lean_object* _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOn _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -52765,7 +55509,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean lean_inc(x_1); x_12 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_12, 0, x_1); -x_13 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_13 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_14 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_14, 0, x_13); lean_ctor_set(x_14, 1, x_12); @@ -52816,7 +55560,7 @@ x_14 = l_Lean_Expr_constLevels_x21(x_2); x_15 = l_Lean_mkConst(x_13, x_14); x_16 = lean_unsigned_to_nat(0u); x_17 = l_Lean_Expr_getAppNumArgsAux(x_3, x_16); -x_18 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_18 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_17); x_19 = lean_mk_array(x_17, x_18); x_20 = lean_unsigned_to_nat(1u); @@ -53351,7 +56095,7 @@ lean_inc(x_70); lean_dec(x_65); x_71 = lean_unsigned_to_nat(0u); x_72 = l_Lean_Expr_getAppNumArgsAux(x_1, x_71); -x_73 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_73 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_72); x_74 = lean_mk_array(x_72, x_73); x_75 = lean_unsigned_to_nat(1u); @@ -53925,7 +56669,7 @@ else lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; lean_object* x_48; x_36 = lean_unsigned_to_nat(0u); x_37 = l_Lean_Expr_getAppNumArgsAux(x_1, x_36); -x_38 = l_Lean_Meta_CheckAssignment_checkApp___closed__1; +x_38 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5; lean_inc(x_37); x_39 = lean_mk_array(x_37, x_38); x_40 = lean_unsigned_to_nat(1u); @@ -54145,526 +56889,642 @@ return x_12; LEAN_EXPORT lean_object* l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isExprDefEqExpensive(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -uint8_t x_8; lean_object* x_9; lean_object* x_985; +uint8_t x_8; lean_object* x_9; lean_object* x_1009; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_985 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_985) == 0) +x_1009 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_1009) == 0) { -lean_object* x_986; uint8_t x_987; -x_986 = lean_ctor_get(x_985, 0); -lean_inc(x_986); -x_987 = lean_unbox(x_986); -if (x_987 == 0) +lean_object* x_1010; uint8_t x_1011; +x_1010 = lean_ctor_get(x_1009, 0); +lean_inc(x_1010); +x_1011 = lean_unbox(x_1010); +if (x_1011 == 0) { -lean_object* x_988; lean_object* x_989; -lean_dec(x_986); -x_988 = lean_ctor_get(x_985, 1); -lean_inc(x_988); -lean_dec(x_985); +lean_object* x_1012; lean_object* x_1013; +lean_dec(x_1010); +x_1012 = lean_ctor_get(x_1009, 1); +lean_inc(x_1012); +lean_dec(x_1009); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_1); lean_inc(x_2); -x_989 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta(x_2, x_1, x_3, x_4, x_5, x_6, x_988); -if (lean_obj_tag(x_989) == 0) +x_1013 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta(x_2, x_1, x_3, x_4, x_5, x_6, x_1012); +if (lean_obj_tag(x_1013) == 0) { -lean_object* x_990; lean_object* x_991; uint8_t x_992; -x_990 = lean_ctor_get(x_989, 0); -lean_inc(x_990); -x_991 = lean_ctor_get(x_989, 1); -lean_inc(x_991); -lean_dec(x_989); -x_992 = lean_unbox(x_990); -lean_dec(x_990); -x_8 = x_992; -x_9 = x_991; -goto block_984; +lean_object* x_1014; lean_object* x_1015; uint8_t x_1016; +x_1014 = lean_ctor_get(x_1013, 0); +lean_inc(x_1014); +x_1015 = lean_ctor_get(x_1013, 1); +lean_inc(x_1015); +lean_dec(x_1013); +x_1016 = lean_unbox(x_1014); +lean_dec(x_1014); +x_8 = x_1016; +x_9 = x_1015; +goto block_1008; } else { -uint8_t x_993; +uint8_t x_1017; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_993 = !lean_is_exclusive(x_989); -if (x_993 == 0) +x_1017 = !lean_is_exclusive(x_1013); +if (x_1017 == 0) { -return x_989; +return x_1013; } else { -lean_object* x_994; lean_object* x_995; lean_object* x_996; -x_994 = lean_ctor_get(x_989, 0); -x_995 = lean_ctor_get(x_989, 1); -lean_inc(x_995); -lean_inc(x_994); -lean_dec(x_989); -x_996 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_996, 0, x_994); -lean_ctor_set(x_996, 1, x_995); -return x_996; +lean_object* x_1018; lean_object* x_1019; lean_object* x_1020; +x_1018 = lean_ctor_get(x_1013, 0); +x_1019 = lean_ctor_get(x_1013, 1); +lean_inc(x_1019); +lean_inc(x_1018); +lean_dec(x_1013); +x_1020 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1020, 0, x_1018); +lean_ctor_set(x_1020, 1, x_1019); +return x_1020; } } } else { -lean_object* x_997; uint8_t x_998; -x_997 = lean_ctor_get(x_985, 1); -lean_inc(x_997); -lean_dec(x_985); -x_998 = lean_unbox(x_986); -lean_dec(x_986); -x_8 = x_998; -x_9 = x_997; -goto block_984; +lean_object* x_1021; uint8_t x_1022; +x_1021 = lean_ctor_get(x_1009, 1); +lean_inc(x_1021); +lean_dec(x_1009); +x_1022 = lean_unbox(x_1010); +lean_dec(x_1010); +x_8 = x_1022; +x_9 = x_1021; +goto block_1008; } } else { -uint8_t x_999; +uint8_t x_1023; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_999 = !lean_is_exclusive(x_985); -if (x_999 == 0) +x_1023 = !lean_is_exclusive(x_1009); +if (x_1023 == 0) { -return x_985; +return x_1009; } else { -lean_object* x_1000; lean_object* x_1001; lean_object* x_1002; -x_1000 = lean_ctor_get(x_985, 0); -x_1001 = lean_ctor_get(x_985, 1); -lean_inc(x_1001); -lean_inc(x_1000); -lean_dec(x_985); -x_1002 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_1002, 0, x_1000); -lean_ctor_set(x_1002, 1, x_1001); -return x_1002; +lean_object* x_1024; lean_object* x_1025; lean_object* x_1026; +x_1024 = lean_ctor_get(x_1009, 0); +x_1025 = lean_ctor_get(x_1009, 1); +lean_inc(x_1025); +lean_inc(x_1024); +lean_dec(x_1009); +x_1026 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1026, 0, x_1024); +lean_ctor_set(x_1026, 1, x_1025); +return x_1026; } } -block_984: +block_1008: { if (x_8 == 0) { -lean_object* x_10; +uint8_t x_10; lean_object* x_11; lean_object* x_987; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_10 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProj(x_1, x_2, x_3, x_4, x_5, x_6, x_9); -if (lean_obj_tag(x_10) == 0) +x_987 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct(x_1, x_2, x_3, x_4, x_5, x_6, x_9); +if (lean_obj_tag(x_987) == 0) { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +lean_object* x_988; uint8_t x_989; +x_988 = lean_ctor_get(x_987, 0); +lean_inc(x_988); +x_989 = lean_unbox(x_988); +if (x_989 == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_357; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -x_357 = lean_unbox(x_12); -lean_dec(x_12); -if (x_357 == 0) +lean_object* x_990; lean_object* x_991; +lean_dec(x_988); +x_990 = lean_ctor_get(x_987, 1); +lean_inc(x_990); +lean_dec(x_987); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +lean_inc(x_2); +x_991 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct(x_2, x_1, x_3, x_4, x_5, x_6, x_990); +if (lean_obj_tag(x_991) == 0) { -uint8_t x_358; -lean_free_object(x_10); -x_358 = l_Lean_Expr_isConst(x_1); -if (x_358 == 0) -{ -lean_object* x_359; -x_359 = lean_box(0); -x_14 = x_359; -goto block_356; +lean_object* x_992; lean_object* x_993; uint8_t x_994; +x_992 = lean_ctor_get(x_991, 0); +lean_inc(x_992); +x_993 = lean_ctor_get(x_991, 1); +lean_inc(x_993); +lean_dec(x_991); +x_994 = lean_unbox(x_992); +lean_dec(x_992); +x_10 = x_994; +x_11 = x_993; +goto block_986; } else { +uint8_t x_995; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_995 = !lean_is_exclusive(x_991); +if (x_995 == 0) +{ +return x_991; +} +else +{ +lean_object* x_996; lean_object* x_997; lean_object* x_998; +x_996 = lean_ctor_get(x_991, 0); +x_997 = lean_ctor_get(x_991, 1); +lean_inc(x_997); +lean_inc(x_996); +lean_dec(x_991); +x_998 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_998, 0, x_996); +lean_ctor_set(x_998, 1, x_997); +return x_998; +} +} +} +else +{ +lean_object* x_999; uint8_t x_1000; +x_999 = lean_ctor_get(x_987, 1); +lean_inc(x_999); +lean_dec(x_987); +x_1000 = lean_unbox(x_988); +lean_dec(x_988); +x_10 = x_1000; +x_11 = x_999; +goto block_986; +} +} +else +{ +uint8_t x_1001; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1001 = !lean_is_exclusive(x_987); +if (x_1001 == 0) +{ +return x_987; +} +else +{ +lean_object* x_1002; lean_object* x_1003; lean_object* x_1004; +x_1002 = lean_ctor_get(x_987, 0); +x_1003 = lean_ctor_get(x_987, 1); +lean_inc(x_1003); +lean_inc(x_1002); +lean_dec(x_987); +x_1004 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1004, 0, x_1002); +lean_ctor_set(x_1004, 1, x_1003); +return x_1004; +} +} +block_986: +{ +if (x_10 == 0) +{ +lean_object* x_12; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_12 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqProj(x_1, x_2, x_3, x_4, x_5, x_6, x_11); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_359; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +x_359 = lean_unbox(x_14); +lean_dec(x_14); +if (x_359 == 0) +{ uint8_t x_360; -x_360 = l_Lean_Expr_isConst(x_2); +lean_free_object(x_12); +x_360 = l_Lean_Expr_isConst(x_1); if (x_360 == 0) { lean_object* x_361; x_361 = lean_box(0); -x_14 = x_361; -goto block_356; +x_16 = x_361; +goto block_358; } else { -lean_object* x_362; lean_object* x_363; uint8_t x_364; -x_362 = l_Lean_Expr_constName_x21(x_1); -x_363 = l_Lean_Expr_constName_x21(x_2); -x_364 = lean_name_eq(x_362, x_363); -lean_dec(x_363); -lean_dec(x_362); -if (x_364 == 0) +uint8_t x_362; +x_362 = l_Lean_Expr_isConst(x_2); +if (x_362 == 0) { -lean_object* x_365; +lean_object* x_363; +x_363 = lean_box(0); +x_16 = x_363; +goto block_358; +} +else +{ +lean_object* x_364; lean_object* x_365; uint8_t x_366; +x_364 = l_Lean_Expr_constName_x21(x_1); +x_365 = l_Lean_Expr_constName_x21(x_2); +x_366 = lean_name_eq(x_364, x_365); +lean_dec(x_365); +lean_dec(x_364); +if (x_366 == 0) +{ +lean_object* x_367; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_365 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_365) == 0) +x_367 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_15); +if (lean_obj_tag(x_367) == 0) { -lean_object* x_366; uint8_t x_367; -x_366 = lean_ctor_get(x_365, 0); -lean_inc(x_366); -x_367 = lean_unbox(x_366); -lean_dec(x_366); -switch (x_367) { +lean_object* x_368; uint8_t x_369; +x_368 = lean_ctor_get(x_367, 0); +lean_inc(x_368); +x_369 = lean_unbox(x_368); +lean_dec(x_368); +switch (x_369) { case 0: { -uint8_t x_368; +uint8_t x_370; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_368 = !lean_is_exclusive(x_365); -if (x_368 == 0) +x_370 = !lean_is_exclusive(x_367); +if (x_370 == 0) { -lean_object* x_369; uint8_t x_370; lean_object* x_371; -x_369 = lean_ctor_get(x_365, 0); -lean_dec(x_369); -x_370 = 0; -x_371 = lean_box(x_370); -lean_ctor_set(x_365, 0, x_371); -return x_365; +lean_object* x_371; uint8_t x_372; lean_object* x_373; +x_371 = lean_ctor_get(x_367, 0); +lean_dec(x_371); +x_372 = 0; +x_373 = lean_box(x_372); +lean_ctor_set(x_367, 0, x_373); +return x_367; } else { -lean_object* x_372; uint8_t x_373; lean_object* x_374; lean_object* x_375; -x_372 = lean_ctor_get(x_365, 1); -lean_inc(x_372); -lean_dec(x_365); -x_373 = 0; -x_374 = lean_box(x_373); -x_375 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_375, 0, x_374); -lean_ctor_set(x_375, 1, x_372); -return x_375; +lean_object* x_374; uint8_t x_375; lean_object* x_376; lean_object* x_377; +x_374 = lean_ctor_get(x_367, 1); +lean_inc(x_374); +lean_dec(x_367); +x_375 = 0; +x_376 = lean_box(x_375); +x_377 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_377, 0, x_376); +lean_ctor_set(x_377, 1, x_374); +return x_377; } } case 1: { -uint8_t x_376; +uint8_t x_378; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_376 = !lean_is_exclusive(x_365); -if (x_376 == 0) +x_378 = !lean_is_exclusive(x_367); +if (x_378 == 0) { -lean_object* x_377; uint8_t x_378; lean_object* x_379; -x_377 = lean_ctor_get(x_365, 0); -lean_dec(x_377); -x_378 = 1; -x_379 = lean_box(x_378); -lean_ctor_set(x_365, 0, x_379); -return x_365; +lean_object* x_379; uint8_t x_380; lean_object* x_381; +x_379 = lean_ctor_get(x_367, 0); +lean_dec(x_379); +x_380 = 1; +x_381 = lean_box(x_380); +lean_ctor_set(x_367, 0, x_381); +return x_367; } else { -lean_object* x_380; uint8_t x_381; lean_object* x_382; lean_object* x_383; -x_380 = lean_ctor_get(x_365, 1); -lean_inc(x_380); -lean_dec(x_365); -x_381 = 1; -x_382 = lean_box(x_381); -x_383 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_383, 0, x_382); -lean_ctor_set(x_383, 1, x_380); -return x_383; +lean_object* x_382; uint8_t x_383; lean_object* x_384; lean_object* x_385; +x_382 = lean_ctor_get(x_367, 1); +lean_inc(x_382); +lean_dec(x_367); +x_383 = 1; +x_384 = lean_box(x_383); +x_385 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_385, 0, x_384); +lean_ctor_set(x_385, 1, x_382); +return x_385; } } default: { -lean_object* x_384; lean_object* x_385; -x_384 = lean_ctor_get(x_365, 1); -lean_inc(x_384); -lean_dec(x_365); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_385 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_384); -if (lean_obj_tag(x_385) == 0) -{ -lean_object* x_386; uint8_t x_387; -x_386 = lean_ctor_get(x_385, 0); +lean_object* x_386; lean_object* x_387; +x_386 = lean_ctor_get(x_367, 1); lean_inc(x_386); -x_387 = lean_unbox(x_386); -lean_dec(x_386); -switch (x_387) { -case 0: -{ -uint8_t x_388; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_388 = !lean_is_exclusive(x_385); -if (x_388 == 0) -{ -lean_object* x_389; uint8_t x_390; lean_object* x_391; -x_389 = lean_ctor_get(x_385, 0); -lean_dec(x_389); -x_390 = 0; -x_391 = lean_box(x_390); -lean_ctor_set(x_385, 0, x_391); -return x_385; -} -else -{ -lean_object* x_392; uint8_t x_393; lean_object* x_394; lean_object* x_395; -x_392 = lean_ctor_get(x_385, 1); -lean_inc(x_392); -lean_dec(x_385); -x_393 = 0; -x_394 = lean_box(x_393); -x_395 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_395, 0, x_394); -lean_ctor_set(x_395, 1, x_392); -return x_395; -} -} -case 1: -{ -uint8_t x_396; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_396 = !lean_is_exclusive(x_385); -if (x_396 == 0) -{ -lean_object* x_397; uint8_t x_398; lean_object* x_399; -x_397 = lean_ctor_get(x_385, 0); -lean_dec(x_397); -x_398 = 1; -x_399 = lean_box(x_398); -lean_ctor_set(x_385, 0, x_399); -return x_385; -} -else -{ -lean_object* x_400; uint8_t x_401; lean_object* x_402; lean_object* x_403; -x_400 = lean_ctor_get(x_385, 1); -lean_inc(x_400); -lean_dec(x_385); -x_401 = 1; -x_402 = lean_box(x_401); -x_403 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_403, 0, x_402); -lean_ctor_set(x_403, 1, x_400); -return x_403; -} -} -default: -{ -lean_object* x_404; lean_object* x_405; -x_404 = lean_ctor_get(x_385, 1); -lean_inc(x_404); -lean_dec(x_385); +lean_dec(x_367); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_405 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_404); -if (lean_obj_tag(x_405) == 0) +x_387 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_386); +if (lean_obj_tag(x_387) == 0) { -lean_object* x_406; uint8_t x_407; -x_406 = lean_ctor_get(x_405, 0); +lean_object* x_388; uint8_t x_389; +x_388 = lean_ctor_get(x_387, 0); +lean_inc(x_388); +x_389 = lean_unbox(x_388); +lean_dec(x_388); +switch (x_389) { +case 0: +{ +uint8_t x_390; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_390 = !lean_is_exclusive(x_387); +if (x_390 == 0) +{ +lean_object* x_391; uint8_t x_392; lean_object* x_393; +x_391 = lean_ctor_get(x_387, 0); +lean_dec(x_391); +x_392 = 0; +x_393 = lean_box(x_392); +lean_ctor_set(x_387, 0, x_393); +return x_387; +} +else +{ +lean_object* x_394; uint8_t x_395; lean_object* x_396; lean_object* x_397; +x_394 = lean_ctor_get(x_387, 1); +lean_inc(x_394); +lean_dec(x_387); +x_395 = 0; +x_396 = lean_box(x_395); +x_397 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_397, 0, x_396); +lean_ctor_set(x_397, 1, x_394); +return x_397; +} +} +case 1: +{ +uint8_t x_398; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_398 = !lean_is_exclusive(x_387); +if (x_398 == 0) +{ +lean_object* x_399; uint8_t x_400; lean_object* x_401; +x_399 = lean_ctor_get(x_387, 0); +lean_dec(x_399); +x_400 = 1; +x_401 = lean_box(x_400); +lean_ctor_set(x_387, 0, x_401); +return x_387; +} +else +{ +lean_object* x_402; uint8_t x_403; lean_object* x_404; lean_object* x_405; +x_402 = lean_ctor_get(x_387, 1); +lean_inc(x_402); +lean_dec(x_387); +x_403 = 1; +x_404 = lean_box(x_403); +x_405 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_405, 0, x_404); +lean_ctor_set(x_405, 1, x_402); +return x_405; +} +} +default: +{ +lean_object* x_406; lean_object* x_407; +x_406 = lean_ctor_get(x_387, 1); lean_inc(x_406); -x_407 = lean_unbox(x_406); -lean_dec(x_406); -switch (x_407) { +lean_dec(x_387); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_407 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_406); +if (lean_obj_tag(x_407) == 0) +{ +lean_object* x_408; uint8_t x_409; +x_408 = lean_ctor_get(x_407, 0); +lean_inc(x_408); +x_409 = lean_unbox(x_408); +lean_dec(x_408); +switch (x_409) { case 0: { -uint8_t x_408; +uint8_t x_410; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_408 = !lean_is_exclusive(x_405); -if (x_408 == 0) +x_410 = !lean_is_exclusive(x_407); +if (x_410 == 0) { -lean_object* x_409; uint8_t x_410; lean_object* x_411; -x_409 = lean_ctor_get(x_405, 0); -lean_dec(x_409); -x_410 = 0; -x_411 = lean_box(x_410); -lean_ctor_set(x_405, 0, x_411); -return x_405; +lean_object* x_411; uint8_t x_412; lean_object* x_413; +x_411 = lean_ctor_get(x_407, 0); +lean_dec(x_411); +x_412 = 0; +x_413 = lean_box(x_412); +lean_ctor_set(x_407, 0, x_413); +return x_407; } else { -lean_object* x_412; uint8_t x_413; lean_object* x_414; lean_object* x_415; -x_412 = lean_ctor_get(x_405, 1); -lean_inc(x_412); -lean_dec(x_405); -x_413 = 0; -x_414 = lean_box(x_413); -x_415 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_415, 0, x_414); -lean_ctor_set(x_415, 1, x_412); -return x_415; +lean_object* x_414; uint8_t x_415; lean_object* x_416; lean_object* x_417; +x_414 = lean_ctor_get(x_407, 1); +lean_inc(x_414); +lean_dec(x_407); +x_415 = 0; +x_416 = lean_box(x_415); +x_417 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_417, 0, x_416); +lean_ctor_set(x_417, 1, x_414); +return x_417; } } case 1: { -uint8_t x_416; +uint8_t x_418; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_416 = !lean_is_exclusive(x_405); -if (x_416 == 0) +x_418 = !lean_is_exclusive(x_407); +if (x_418 == 0) { -lean_object* x_417; uint8_t x_418; lean_object* x_419; -x_417 = lean_ctor_get(x_405, 0); -lean_dec(x_417); -x_418 = 1; -x_419 = lean_box(x_418); -lean_ctor_set(x_405, 0, x_419); -return x_405; +lean_object* x_419; uint8_t x_420; lean_object* x_421; +x_419 = lean_ctor_get(x_407, 0); +lean_dec(x_419); +x_420 = 1; +x_421 = lean_box(x_420); +lean_ctor_set(x_407, 0, x_421); +return x_407; } else { -lean_object* x_420; uint8_t x_421; lean_object* x_422; lean_object* x_423; -x_420 = lean_ctor_get(x_405, 1); -lean_inc(x_420); -lean_dec(x_405); -x_421 = 1; -x_422 = lean_box(x_421); -x_423 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_423, 0, x_422); -lean_ctor_set(x_423, 1, x_420); -return x_423; +lean_object* x_422; uint8_t x_423; lean_object* x_424; lean_object* x_425; +x_422 = lean_ctor_get(x_407, 1); +lean_inc(x_422); +lean_dec(x_407); +x_423 = 1; +x_424 = lean_box(x_423); +x_425 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_425, 0, x_424); +lean_ctor_set(x_425, 1, x_422); +return x_425; } } default: { -lean_object* x_424; lean_object* x_425; -x_424 = lean_ctor_get(x_405, 1); -lean_inc(x_424); -lean_dec(x_405); -x_425 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_424); -if (lean_obj_tag(x_425) == 0) -{ -lean_object* x_426; -x_426 = lean_ctor_get(x_425, 0); +lean_object* x_426; lean_object* x_427; +x_426 = lean_ctor_get(x_407, 1); lean_inc(x_426); -if (lean_obj_tag(x_426) == 1) +lean_dec(x_407); +x_427 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_426); +if (lean_obj_tag(x_427) == 0) { -uint8_t x_427; -x_427 = !lean_is_exclusive(x_425); -if (x_427 == 0) +lean_object* x_428; +x_428 = lean_ctor_get(x_427, 0); +lean_inc(x_428); +if (lean_obj_tag(x_428) == 1) { -lean_object* x_428; uint8_t x_429; lean_object* x_430; -x_428 = lean_ctor_get(x_425, 0); +uint8_t x_429; +x_429 = !lean_is_exclusive(x_427); +if (x_429 == 0) +{ +lean_object* x_430; uint8_t x_431; lean_object* x_432; +x_430 = lean_ctor_get(x_427, 0); +lean_dec(x_430); +x_431 = 1; +x_432 = lean_box(x_431); +lean_ctor_set(x_427, 0, x_432); +return x_427; +} +else +{ +lean_object* x_433; uint8_t x_434; lean_object* x_435; lean_object* x_436; +x_433 = lean_ctor_get(x_427, 1); +lean_inc(x_433); +lean_dec(x_427); +x_434 = 1; +x_435 = lean_box(x_434); +x_436 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_436, 0, x_435); +lean_ctor_set(x_436, 1, x_433); +return x_436; +} +} +else +{ +uint8_t x_437; lean_dec(x_428); -x_429 = 1; -x_430 = lean_box(x_429); -lean_ctor_set(x_425, 0, x_430); -return x_425; +x_437 = !lean_is_exclusive(x_427); +if (x_437 == 0) +{ +lean_object* x_438; uint8_t x_439; lean_object* x_440; +x_438 = lean_ctor_get(x_427, 0); +lean_dec(x_438); +x_439 = 0; +x_440 = lean_box(x_439); +lean_ctor_set(x_427, 0, x_440); +return x_427; } else { -lean_object* x_431; uint8_t x_432; lean_object* x_433; lean_object* x_434; -x_431 = lean_ctor_get(x_425, 1); -lean_inc(x_431); -lean_dec(x_425); -x_432 = 1; -x_433 = lean_box(x_432); -x_434 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_434, 0, x_433); -lean_ctor_set(x_434, 1, x_431); -return x_434; -} -} -else -{ -uint8_t x_435; -lean_dec(x_426); -x_435 = !lean_is_exclusive(x_425); -if (x_435 == 0) -{ -lean_object* x_436; uint8_t x_437; lean_object* x_438; -x_436 = lean_ctor_get(x_425, 0); -lean_dec(x_436); -x_437 = 0; -x_438 = lean_box(x_437); -lean_ctor_set(x_425, 0, x_438); -return x_425; -} -else -{ -lean_object* x_439; uint8_t x_440; lean_object* x_441; lean_object* x_442; -x_439 = lean_ctor_get(x_425, 1); -lean_inc(x_439); -lean_dec(x_425); -x_440 = 0; -x_441 = lean_box(x_440); -x_442 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_442, 0, x_441); -lean_ctor_set(x_442, 1, x_439); -return x_442; +lean_object* x_441; uint8_t x_442; lean_object* x_443; lean_object* x_444; +x_441 = lean_ctor_get(x_427, 1); +lean_inc(x_441); +lean_dec(x_427); +x_442 = 0; +x_443 = lean_box(x_442); +x_444 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_444, 0, x_443); +lean_ctor_set(x_444, 1, x_441); +return x_444; } } } else { -uint8_t x_443; -x_443 = !lean_is_exclusive(x_425); -if (x_443 == 0) +uint8_t x_445; +x_445 = !lean_is_exclusive(x_427); +if (x_445 == 0) { -return x_425; +return x_427; } else { -lean_object* x_444; lean_object* x_445; lean_object* x_446; -x_444 = lean_ctor_get(x_425, 0); -x_445 = lean_ctor_get(x_425, 1); -lean_inc(x_445); -lean_inc(x_444); -lean_dec(x_425); -x_446 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_446, 0, x_444); -lean_ctor_set(x_446, 1, x_445); -return x_446; +lean_object* x_446; lean_object* x_447; lean_object* x_448; +x_446 = lean_ctor_get(x_427, 0); +x_447 = lean_ctor_get(x_427, 1); +lean_inc(x_447); +lean_inc(x_446); +lean_dec(x_427); +x_448 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_448, 0, x_446); +lean_ctor_set(x_448, 1, x_447); +return x_448; } } } @@ -54672,30 +57532,30 @@ return x_446; } else { -uint8_t x_447; +uint8_t x_449; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_447 = !lean_is_exclusive(x_405); -if (x_447 == 0) +x_449 = !lean_is_exclusive(x_407); +if (x_449 == 0) { -return x_405; +return x_407; } else { -lean_object* x_448; lean_object* x_449; lean_object* x_450; -x_448 = lean_ctor_get(x_405, 0); -x_449 = lean_ctor_get(x_405, 1); -lean_inc(x_449); -lean_inc(x_448); -lean_dec(x_405); -x_450 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_450, 0, x_448); -lean_ctor_set(x_450, 1, x_449); -return x_450; +lean_object* x_450; lean_object* x_451; lean_object* x_452; +x_450 = lean_ctor_get(x_407, 0); +x_451 = lean_ctor_get(x_407, 1); +lean_inc(x_451); +lean_inc(x_450); +lean_dec(x_407); +x_452 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_452, 0, x_450); +lean_ctor_set(x_452, 1, x_451); +return x_452; } } } @@ -54703,30 +57563,30 @@ return x_450; } else { -uint8_t x_451; +uint8_t x_453; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_451 = !lean_is_exclusive(x_385); -if (x_451 == 0) +x_453 = !lean_is_exclusive(x_387); +if (x_453 == 0) { -return x_385; +return x_387; } else { -lean_object* x_452; lean_object* x_453; lean_object* x_454; -x_452 = lean_ctor_get(x_385, 0); -x_453 = lean_ctor_get(x_385, 1); -lean_inc(x_453); -lean_inc(x_452); -lean_dec(x_385); -x_454 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_454, 0, x_452); -lean_ctor_set(x_454, 1, x_453); -return x_454; +lean_object* x_454; lean_object* x_455; lean_object* x_456; +x_454 = lean_ctor_get(x_387, 0); +x_455 = lean_ctor_get(x_387, 1); +lean_inc(x_455); +lean_inc(x_454); +lean_dec(x_387); +x_456 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_456, 0, x_454); +lean_ctor_set(x_456, 1, x_455); +return x_456; } } } @@ -54734,536 +57594,536 @@ return x_454; } else { -uint8_t x_455; +uint8_t x_457; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_455 = !lean_is_exclusive(x_365); -if (x_455 == 0) +x_457 = !lean_is_exclusive(x_367); +if (x_457 == 0) { -return x_365; +return x_367; } else { -lean_object* x_456; lean_object* x_457; lean_object* x_458; -x_456 = lean_ctor_get(x_365, 0); -x_457 = lean_ctor_get(x_365, 1); -lean_inc(x_457); -lean_inc(x_456); -lean_dec(x_365); -x_458 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_458, 0, x_456); -lean_ctor_set(x_458, 1, x_457); -return x_458; +lean_object* x_458; lean_object* x_459; lean_object* x_460; +x_458 = lean_ctor_get(x_367, 0); +x_459 = lean_ctor_get(x_367, 1); +lean_inc(x_459); +lean_inc(x_458); +lean_dec(x_367); +x_460 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_460, 0, x_458); +lean_ctor_set(x_460, 1, x_459); +return x_460; } } } else { -lean_object* x_459; lean_object* x_460; lean_object* x_461; +lean_object* x_461; lean_object* x_462; lean_object* x_463; lean_inc(x_1); -x_459 = l_Lean_Expr_constLevels_x21(x_1); +x_461 = l_Lean_Expr_constLevels_x21(x_1); lean_inc(x_2); -x_460 = l_Lean_Expr_constLevels_x21(x_2); +x_462 = l_Lean_Expr_constLevels_x21(x_2); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_461 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_461) == 0) +x_463 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_15); +if (lean_obj_tag(x_463) == 0) { -lean_object* x_462; uint8_t x_463; -x_462 = lean_ctor_get(x_461, 0); -lean_inc(x_462); -x_463 = lean_unbox(x_462); +lean_object* x_464; uint8_t x_465; +x_464 = lean_ctor_get(x_463, 0); +lean_inc(x_464); +x_465 = lean_unbox(x_464); +lean_dec(x_464); +switch (x_465) { +case 0: +{ +uint8_t x_466; lean_dec(x_462); -switch (x_463) { -case 0: -{ -uint8_t x_464; -lean_dec(x_460); -lean_dec(x_459); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_464 = !lean_is_exclusive(x_461); -if (x_464 == 0) +x_466 = !lean_is_exclusive(x_463); +if (x_466 == 0) { -lean_object* x_465; uint8_t x_466; lean_object* x_467; -x_465 = lean_ctor_get(x_461, 0); -lean_dec(x_465); -x_466 = 0; -x_467 = lean_box(x_466); -lean_ctor_set(x_461, 0, x_467); -return x_461; +lean_object* x_467; uint8_t x_468; lean_object* x_469; +x_467 = lean_ctor_get(x_463, 0); +lean_dec(x_467); +x_468 = 0; +x_469 = lean_box(x_468); +lean_ctor_set(x_463, 0, x_469); +return x_463; } else { -lean_object* x_468; uint8_t x_469; lean_object* x_470; lean_object* x_471; -x_468 = lean_ctor_get(x_461, 1); -lean_inc(x_468); -lean_dec(x_461); -x_469 = 0; -x_470 = lean_box(x_469); -x_471 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_471, 0, x_470); -lean_ctor_set(x_471, 1, x_468); -return x_471; +lean_object* x_470; uint8_t x_471; lean_object* x_472; lean_object* x_473; +x_470 = lean_ctor_get(x_463, 1); +lean_inc(x_470); +lean_dec(x_463); +x_471 = 0; +x_472 = lean_box(x_471); +x_473 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_473, 0, x_472); +lean_ctor_set(x_473, 1, x_470); +return x_473; } } case 1: { -uint8_t x_472; -lean_dec(x_460); -lean_dec(x_459); +uint8_t x_474; +lean_dec(x_462); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_472 = !lean_is_exclusive(x_461); -if (x_472 == 0) +x_474 = !lean_is_exclusive(x_463); +if (x_474 == 0) { -lean_object* x_473; uint8_t x_474; lean_object* x_475; -x_473 = lean_ctor_get(x_461, 0); -lean_dec(x_473); -x_474 = 1; -x_475 = lean_box(x_474); -lean_ctor_set(x_461, 0, x_475); -return x_461; +lean_object* x_475; uint8_t x_476; lean_object* x_477; +x_475 = lean_ctor_get(x_463, 0); +lean_dec(x_475); +x_476 = 1; +x_477 = lean_box(x_476); +lean_ctor_set(x_463, 0, x_477); +return x_463; } else { -lean_object* x_476; uint8_t x_477; lean_object* x_478; lean_object* x_479; -x_476 = lean_ctor_get(x_461, 1); -lean_inc(x_476); -lean_dec(x_461); -x_477 = 1; -x_478 = lean_box(x_477); -x_479 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_479, 0, x_478); -lean_ctor_set(x_479, 1, x_476); -return x_479; +lean_object* x_478; uint8_t x_479; lean_object* x_480; lean_object* x_481; +x_478 = lean_ctor_get(x_463, 1); +lean_inc(x_478); +lean_dec(x_463); +x_479 = 1; +x_480 = lean_box(x_479); +x_481 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_481, 0, x_480); +lean_ctor_set(x_481, 1, x_478); +return x_481; } } default: { -lean_object* x_480; lean_object* x_481; -x_480 = lean_ctor_get(x_461, 1); -lean_inc(x_480); -lean_dec(x_461); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_481 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_480); -if (lean_obj_tag(x_481) == 0) -{ -lean_object* x_482; uint8_t x_483; -x_482 = lean_ctor_get(x_481, 0); +lean_object* x_482; lean_object* x_483; +x_482 = lean_ctor_get(x_463, 1); lean_inc(x_482); -x_483 = lean_unbox(x_482); -lean_dec(x_482); -switch (x_483) { -case 0: -{ -uint8_t x_484; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_484 = !lean_is_exclusive(x_481); -if (x_484 == 0) -{ -lean_object* x_485; uint8_t x_486; lean_object* x_487; -x_485 = lean_ctor_get(x_481, 0); -lean_dec(x_485); -x_486 = 0; -x_487 = lean_box(x_486); -lean_ctor_set(x_481, 0, x_487); -return x_481; -} -else -{ -lean_object* x_488; uint8_t x_489; lean_object* x_490; lean_object* x_491; -x_488 = lean_ctor_get(x_481, 1); -lean_inc(x_488); -lean_dec(x_481); -x_489 = 0; -x_490 = lean_box(x_489); -x_491 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_491, 0, x_490); -lean_ctor_set(x_491, 1, x_488); -return x_491; -} -} -case 1: -{ -uint8_t x_492; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_492 = !lean_is_exclusive(x_481); -if (x_492 == 0) -{ -lean_object* x_493; uint8_t x_494; lean_object* x_495; -x_493 = lean_ctor_get(x_481, 0); -lean_dec(x_493); -x_494 = 1; -x_495 = lean_box(x_494); -lean_ctor_set(x_481, 0, x_495); -return x_481; -} -else -{ -lean_object* x_496; uint8_t x_497; lean_object* x_498; lean_object* x_499; -x_496 = lean_ctor_get(x_481, 1); -lean_inc(x_496); -lean_dec(x_481); -x_497 = 1; -x_498 = lean_box(x_497); -x_499 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_499, 0, x_498); -lean_ctor_set(x_499, 1, x_496); -return x_499; -} -} -default: -{ -lean_object* x_500; lean_object* x_501; -x_500 = lean_ctor_get(x_481, 1); -lean_inc(x_500); -lean_dec(x_481); +lean_dec(x_463); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_501 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_500); -if (lean_obj_tag(x_501) == 0) +x_483 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_482); +if (lean_obj_tag(x_483) == 0) { -lean_object* x_502; uint8_t x_503; -x_502 = lean_ctor_get(x_501, 0); -lean_inc(x_502); -x_503 = lean_unbox(x_502); -lean_dec(x_502); -switch (x_503) { +lean_object* x_484; uint8_t x_485; +x_484 = lean_ctor_get(x_483, 0); +lean_inc(x_484); +x_485 = lean_unbox(x_484); +lean_dec(x_484); +switch (x_485) { case 0: { -uint8_t x_504; -lean_dec(x_460); -lean_dec(x_459); +uint8_t x_486; +lean_dec(x_462); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_504 = !lean_is_exclusive(x_501); -if (x_504 == 0) +x_486 = !lean_is_exclusive(x_483); +if (x_486 == 0) { -lean_object* x_505; uint8_t x_506; lean_object* x_507; -x_505 = lean_ctor_get(x_501, 0); -lean_dec(x_505); -x_506 = 0; -x_507 = lean_box(x_506); -lean_ctor_set(x_501, 0, x_507); -return x_501; +lean_object* x_487; uint8_t x_488; lean_object* x_489; +x_487 = lean_ctor_get(x_483, 0); +lean_dec(x_487); +x_488 = 0; +x_489 = lean_box(x_488); +lean_ctor_set(x_483, 0, x_489); +return x_483; } else { -lean_object* x_508; uint8_t x_509; lean_object* x_510; lean_object* x_511; -x_508 = lean_ctor_get(x_501, 1); -lean_inc(x_508); -lean_dec(x_501); -x_509 = 0; -x_510 = lean_box(x_509); -x_511 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_511, 0, x_510); -lean_ctor_set(x_511, 1, x_508); -return x_511; +lean_object* x_490; uint8_t x_491; lean_object* x_492; lean_object* x_493; +x_490 = lean_ctor_get(x_483, 1); +lean_inc(x_490); +lean_dec(x_483); +x_491 = 0; +x_492 = lean_box(x_491); +x_493 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_493, 0, x_492); +lean_ctor_set(x_493, 1, x_490); +return x_493; } } case 1: { -uint8_t x_512; -lean_dec(x_460); -lean_dec(x_459); +uint8_t x_494; +lean_dec(x_462); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_512 = !lean_is_exclusive(x_501); -if (x_512 == 0) +x_494 = !lean_is_exclusive(x_483); +if (x_494 == 0) { -lean_object* x_513; uint8_t x_514; lean_object* x_515; -x_513 = lean_ctor_get(x_501, 0); -lean_dec(x_513); -x_514 = 1; -x_515 = lean_box(x_514); -lean_ctor_set(x_501, 0, x_515); -return x_501; +lean_object* x_495; uint8_t x_496; lean_object* x_497; +x_495 = lean_ctor_get(x_483, 0); +lean_dec(x_495); +x_496 = 1; +x_497 = lean_box(x_496); +lean_ctor_set(x_483, 0, x_497); +return x_483; } else { -lean_object* x_516; uint8_t x_517; lean_object* x_518; lean_object* x_519; -x_516 = lean_ctor_get(x_501, 1); -lean_inc(x_516); -lean_dec(x_501); -x_517 = 1; -x_518 = lean_box(x_517); -x_519 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_519, 0, x_518); -lean_ctor_set(x_519, 1, x_516); -return x_519; +lean_object* x_498; uint8_t x_499; lean_object* x_500; lean_object* x_501; +x_498 = lean_ctor_get(x_483, 1); +lean_inc(x_498); +lean_dec(x_483); +x_499 = 1; +x_500 = lean_box(x_499); +x_501 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_501, 0, x_500); +lean_ctor_set(x_501, 1, x_498); +return x_501; } } default: { -lean_object* x_520; lean_object* x_521; -x_520 = lean_ctor_get(x_501, 1); -lean_inc(x_520); -lean_dec(x_501); +lean_object* x_502; lean_object* x_503; +x_502 = lean_ctor_get(x_483, 1); +lean_inc(x_502); +lean_dec(x_483); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_521 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_520); -if (lean_obj_tag(x_521) == 0) +lean_inc(x_2); +lean_inc(x_1); +x_503 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_502); +if (lean_obj_tag(x_503) == 0) { -lean_object* x_522; uint8_t x_523; -x_522 = lean_ctor_get(x_521, 0); -lean_inc(x_522); -x_523 = lean_unbox(x_522); -lean_dec(x_522); -switch (x_523) { +lean_object* x_504; uint8_t x_505; +x_504 = lean_ctor_get(x_503, 0); +lean_inc(x_504); +x_505 = lean_unbox(x_504); +lean_dec(x_504); +switch (x_505) { case 0: { -uint8_t x_524; -lean_dec(x_460); -lean_dec(x_459); +uint8_t x_506; +lean_dec(x_462); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_524 = !lean_is_exclusive(x_521); -if (x_524 == 0) +lean_dec(x_2); +lean_dec(x_1); +x_506 = !lean_is_exclusive(x_503); +if (x_506 == 0) { -lean_object* x_525; uint8_t x_526; lean_object* x_527; -x_525 = lean_ctor_get(x_521, 0); -lean_dec(x_525); -x_526 = 0; -x_527 = lean_box(x_526); -lean_ctor_set(x_521, 0, x_527); -return x_521; +lean_object* x_507; uint8_t x_508; lean_object* x_509; +x_507 = lean_ctor_get(x_503, 0); +lean_dec(x_507); +x_508 = 0; +x_509 = lean_box(x_508); +lean_ctor_set(x_503, 0, x_509); +return x_503; } else { -lean_object* x_528; uint8_t x_529; lean_object* x_530; lean_object* x_531; -x_528 = lean_ctor_get(x_521, 1); -lean_inc(x_528); -lean_dec(x_521); -x_529 = 0; -x_530 = lean_box(x_529); -x_531 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_531, 0, x_530); -lean_ctor_set(x_531, 1, x_528); -return x_531; +lean_object* x_510; uint8_t x_511; lean_object* x_512; lean_object* x_513; +x_510 = lean_ctor_get(x_503, 1); +lean_inc(x_510); +lean_dec(x_503); +x_511 = 0; +x_512 = lean_box(x_511); +x_513 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_513, 0, x_512); +lean_ctor_set(x_513, 1, x_510); +return x_513; } } case 1: { -uint8_t x_532; -lean_dec(x_460); -lean_dec(x_459); +uint8_t x_514; +lean_dec(x_462); +lean_dec(x_461); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_532 = !lean_is_exclusive(x_521); -if (x_532 == 0) +lean_dec(x_2); +lean_dec(x_1); +x_514 = !lean_is_exclusive(x_503); +if (x_514 == 0) { -lean_object* x_533; uint8_t x_534; lean_object* x_535; -x_533 = lean_ctor_get(x_521, 0); -lean_dec(x_533); -x_534 = 1; -x_535 = lean_box(x_534); -lean_ctor_set(x_521, 0, x_535); -return x_521; +lean_object* x_515; uint8_t x_516; lean_object* x_517; +x_515 = lean_ctor_get(x_503, 0); +lean_dec(x_515); +x_516 = 1; +x_517 = lean_box(x_516); +lean_ctor_set(x_503, 0, x_517); +return x_503; } else { -lean_object* x_536; uint8_t x_537; lean_object* x_538; lean_object* x_539; -x_536 = lean_ctor_get(x_521, 1); -lean_inc(x_536); -lean_dec(x_521); -x_537 = 1; -x_538 = lean_box(x_537); -x_539 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_539, 0, x_538); -lean_ctor_set(x_539, 1, x_536); -return x_539; +lean_object* x_518; uint8_t x_519; lean_object* x_520; lean_object* x_521; +x_518 = lean_ctor_get(x_503, 1); +lean_inc(x_518); +lean_dec(x_503); +x_519 = 1; +x_520 = lean_box(x_519); +x_521 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_521, 0, x_520); +lean_ctor_set(x_521, 1, x_518); +return x_521; } } default: { -lean_object* x_540; lean_object* x_541; -x_540 = lean_ctor_get(x_521, 1); -lean_inc(x_540); -lean_dec(x_521); -x_541 = l_Lean_Meta_isListLevelDefEqAux(x_459, x_460, x_3, x_4, x_5, x_6, x_540); +lean_object* x_522; lean_object* x_523; +x_522 = lean_ctor_get(x_503, 1); +lean_inc(x_522); +lean_dec(x_503); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_523 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_522); +if (lean_obj_tag(x_523) == 0) +{ +lean_object* x_524; uint8_t x_525; +x_524 = lean_ctor_get(x_523, 0); +lean_inc(x_524); +x_525 = lean_unbox(x_524); +lean_dec(x_524); +switch (x_525) { +case 0: +{ +uint8_t x_526; +lean_dec(x_462); +lean_dec(x_461); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_526 = !lean_is_exclusive(x_523); +if (x_526 == 0) +{ +lean_object* x_527; uint8_t x_528; lean_object* x_529; +x_527 = lean_ctor_get(x_523, 0); +lean_dec(x_527); +x_528 = 0; +x_529 = lean_box(x_528); +lean_ctor_set(x_523, 0, x_529); +return x_523; +} +else +{ +lean_object* x_530; uint8_t x_531; lean_object* x_532; lean_object* x_533; +x_530 = lean_ctor_get(x_523, 1); +lean_inc(x_530); +lean_dec(x_523); +x_531 = 0; +x_532 = lean_box(x_531); +x_533 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_533, 0, x_532); +lean_ctor_set(x_533, 1, x_530); +return x_533; +} +} +case 1: +{ +uint8_t x_534; +lean_dec(x_462); +lean_dec(x_461); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_534 = !lean_is_exclusive(x_523); +if (x_534 == 0) +{ +lean_object* x_535; uint8_t x_536; lean_object* x_537; +x_535 = lean_ctor_get(x_523, 0); +lean_dec(x_535); +x_536 = 1; +x_537 = lean_box(x_536); +lean_ctor_set(x_523, 0, x_537); +return x_523; +} +else +{ +lean_object* x_538; uint8_t x_539; lean_object* x_540; lean_object* x_541; +x_538 = lean_ctor_get(x_523, 1); +lean_inc(x_538); +lean_dec(x_523); +x_539 = 1; +x_540 = lean_box(x_539); +x_541 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_541, 0, x_540); +lean_ctor_set(x_541, 1, x_538); return x_541; } } -} -else +default: { -uint8_t x_542; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_542 = !lean_is_exclusive(x_521); -if (x_542 == 0) -{ -return x_521; -} -else -{ -lean_object* x_543; lean_object* x_544; lean_object* x_545; -x_543 = lean_ctor_get(x_521, 0); -x_544 = lean_ctor_get(x_521, 1); -lean_inc(x_544); -lean_inc(x_543); -lean_dec(x_521); -x_545 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_545, 0, x_543); -lean_ctor_set(x_545, 1, x_544); -return x_545; -} -} +lean_object* x_542; lean_object* x_543; +x_542 = lean_ctor_get(x_523, 1); +lean_inc(x_542); +lean_dec(x_523); +x_543 = l_Lean_Meta_isListLevelDefEqAux(x_461, x_462, x_3, x_4, x_5, x_6, x_542); +return x_543; } } } else { -uint8_t x_546; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_546 = !lean_is_exclusive(x_501); -if (x_546 == 0) -{ -return x_501; -} -else -{ -lean_object* x_547; lean_object* x_548; lean_object* x_549; -x_547 = lean_ctor_get(x_501, 0); -x_548 = lean_ctor_get(x_501, 1); -lean_inc(x_548); -lean_inc(x_547); -lean_dec(x_501); -x_549 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_549, 0, x_547); -lean_ctor_set(x_549, 1, x_548); -return x_549; -} -} -} -} -} -else -{ -uint8_t x_550; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_550 = !lean_is_exclusive(x_481); -if (x_550 == 0) -{ -return x_481; -} -else -{ -lean_object* x_551; lean_object* x_552; lean_object* x_553; -x_551 = lean_ctor_get(x_481, 0); -x_552 = lean_ctor_get(x_481, 1); -lean_inc(x_552); -lean_inc(x_551); -lean_dec(x_481); -x_553 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_553, 0, x_551); -lean_ctor_set(x_553, 1, x_552); -return x_553; -} -} -} -} -} -else -{ -uint8_t x_554; -lean_dec(x_460); -lean_dec(x_459); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_554 = !lean_is_exclusive(x_461); -if (x_554 == 0) -{ -return x_461; -} -else -{ -lean_object* x_555; lean_object* x_556; lean_object* x_557; -x_555 = lean_ctor_get(x_461, 0); -x_556 = lean_ctor_get(x_461, 1); -lean_inc(x_556); -lean_inc(x_555); +uint8_t x_544; +lean_dec(x_462); lean_dec(x_461); -x_557 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_557, 0, x_555); -lean_ctor_set(x_557, 1, x_556); -return x_557; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_544 = !lean_is_exclusive(x_523); +if (x_544 == 0) +{ +return x_523; +} +else +{ +lean_object* x_545; lean_object* x_546; lean_object* x_547; +x_545 = lean_ctor_get(x_523, 0); +x_546 = lean_ctor_get(x_523, 1); +lean_inc(x_546); +lean_inc(x_545); +lean_dec(x_523); +x_547 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_547, 0, x_545); +lean_ctor_set(x_547, 1, x_546); +return x_547; +} +} +} +} +} +else +{ +uint8_t x_548; +lean_dec(x_462); +lean_dec(x_461); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_548 = !lean_is_exclusive(x_503); +if (x_548 == 0) +{ +return x_503; +} +else +{ +lean_object* x_549; lean_object* x_550; lean_object* x_551; +x_549 = lean_ctor_get(x_503, 0); +x_550 = lean_ctor_get(x_503, 1); +lean_inc(x_550); +lean_inc(x_549); +lean_dec(x_503); +x_551 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_551, 0, x_549); +lean_ctor_set(x_551, 1, x_550); +return x_551; +} +} +} +} +} +else +{ +uint8_t x_552; +lean_dec(x_462); +lean_dec(x_461); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_552 = !lean_is_exclusive(x_483); +if (x_552 == 0) +{ +return x_483; +} +else +{ +lean_object* x_553; lean_object* x_554; lean_object* x_555; +x_553 = lean_ctor_get(x_483, 0); +x_554 = lean_ctor_get(x_483, 1); +lean_inc(x_554); +lean_inc(x_553); +lean_dec(x_483); +x_555 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_555, 0, x_553); +lean_ctor_set(x_555, 1, x_554); +return x_555; +} +} +} +} +} +else +{ +uint8_t x_556; +lean_dec(x_462); +lean_dec(x_461); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_556 = !lean_is_exclusive(x_463); +if (x_556 == 0) +{ +return x_463; +} +else +{ +lean_object* x_557; lean_object* x_558; lean_object* x_559; +x_557 = lean_ctor_get(x_463, 0); +x_558 = lean_ctor_get(x_463, 1); +lean_inc(x_558); +lean_inc(x_557); +lean_dec(x_463); +x_559 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_559, 0, x_557); +lean_ctor_set(x_559, 1, x_558); +return x_559; } } } @@ -55272,502 +58132,502 @@ return x_557; } else { -uint8_t x_558; lean_object* x_559; +uint8_t x_560; lean_object* x_561; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_558 = 1; -x_559 = lean_box(x_558); -lean_ctor_set(x_10, 0, x_559); -return x_10; +x_560 = 1; +x_561 = lean_box(x_560); +lean_ctor_set(x_12, 0, x_561); +return x_12; } -block_356: +block_358: { -uint8_t x_15; -lean_dec(x_14); -x_15 = l_Lean_Expr_isApp(x_1); -if (x_15 == 0) +uint8_t x_17; +lean_dec(x_16); +x_17 = l_Lean_Expr_isApp(x_1); +if (x_17 == 0) { -lean_object* x_16; +lean_object* x_18; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_16 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_16) == 0) +x_18 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_15); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_17; uint8_t x_18; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_unbox(x_17); -lean_dec(x_17); -switch (x_18) { +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_unbox(x_19); +lean_dec(x_19); +switch (x_20) { case 0: { -uint8_t x_19; +uint8_t x_21; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_19 = !lean_is_exclusive(x_16); -if (x_19 == 0) +x_21 = !lean_is_exclusive(x_18); +if (x_21 == 0) { -lean_object* x_20; uint8_t x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_16, 0); -lean_dec(x_20); -x_21 = 0; -x_22 = lean_box(x_21); -lean_ctor_set(x_16, 0, x_22); -return x_16; +lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_18, 0); +lean_dec(x_22); +x_23 = 0; +x_24 = lean_box(x_23); +lean_ctor_set(x_18, 0, x_24); +return x_18; } else { -lean_object* x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; -x_23 = lean_ctor_get(x_16, 1); -lean_inc(x_23); -lean_dec(x_16); -x_24 = 0; -x_25 = lean_box(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_23); -return x_26; +lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_18, 1); +lean_inc(x_25); +lean_dec(x_18); +x_26 = 0; +x_27 = lean_box(x_26); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_25); +return x_28; } } case 1: { -uint8_t x_27; +uint8_t x_29; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_27 = !lean_is_exclusive(x_16); -if (x_27 == 0) +x_29 = !lean_is_exclusive(x_18); +if (x_29 == 0) { -lean_object* x_28; uint8_t x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_16, 0); -lean_dec(x_28); -x_29 = 1; -x_30 = lean_box(x_29); -lean_ctor_set(x_16, 0, x_30); -return x_16; +lean_object* x_30; uint8_t x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_18, 0); +lean_dec(x_30); +x_31 = 1; +x_32 = lean_box(x_31); +lean_ctor_set(x_18, 0, x_32); +return x_18; } else { -lean_object* x_31; uint8_t x_32; lean_object* x_33; lean_object* x_34; -x_31 = lean_ctor_get(x_16, 1); -lean_inc(x_31); -lean_dec(x_16); -x_32 = 1; -x_33 = lean_box(x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_31); -return x_34; +lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_18, 1); +lean_inc(x_33); +lean_dec(x_18); +x_34 = 1; +x_35 = lean_box(x_34); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_33); +return x_36; } } default: { -lean_object* x_35; lean_object* x_36; -x_35 = lean_ctor_get(x_16, 1); -lean_inc(x_35); -lean_dec(x_16); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_36 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_35); -if (lean_obj_tag(x_36) == 0) -{ -lean_object* x_37; uint8_t x_38; -x_37 = lean_ctor_get(x_36, 0); +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_18, 1); lean_inc(x_37); -x_38 = lean_unbox(x_37); -lean_dec(x_37); -switch (x_38) { -case 0: -{ -uint8_t x_39; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_39 = !lean_is_exclusive(x_36); -if (x_39 == 0) -{ -lean_object* x_40; uint8_t x_41; lean_object* x_42; -x_40 = lean_ctor_get(x_36, 0); -lean_dec(x_40); -x_41 = 0; -x_42 = lean_box(x_41); -lean_ctor_set(x_36, 0, x_42); -return x_36; -} -else -{ -lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46; -x_43 = lean_ctor_get(x_36, 1); -lean_inc(x_43); -lean_dec(x_36); -x_44 = 0; -x_45 = lean_box(x_44); -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_45); -lean_ctor_set(x_46, 1, x_43); -return x_46; -} -} -case 1: -{ -uint8_t x_47; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_47 = !lean_is_exclusive(x_36); -if (x_47 == 0) -{ -lean_object* x_48; uint8_t x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_36, 0); -lean_dec(x_48); -x_49 = 1; -x_50 = lean_box(x_49); -lean_ctor_set(x_36, 0, x_50); -return x_36; -} -else -{ -lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_ctor_get(x_36, 1); -lean_inc(x_51); -lean_dec(x_36); -x_52 = 1; -x_53 = lean_box(x_52); -x_54 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_51); -return x_54; -} -} -default: -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_36, 1); -lean_inc(x_55); -lean_dec(x_36); +lean_dec(x_18); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_56 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_55); -if (lean_obj_tag(x_56) == 0) +x_38 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_37); +if (lean_obj_tag(x_38) == 0) { -lean_object* x_57; uint8_t x_58; -x_57 = lean_ctor_get(x_56, 0); +lean_object* x_39; uint8_t x_40; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_unbox(x_39); +lean_dec(x_39); +switch (x_40) { +case 0: +{ +uint8_t x_41; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_41 = !lean_is_exclusive(x_38); +if (x_41 == 0) +{ +lean_object* x_42; uint8_t x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_38, 0); +lean_dec(x_42); +x_43 = 0; +x_44 = lean_box(x_43); +lean_ctor_set(x_38, 0, x_44); +return x_38; +} +else +{ +lean_object* x_45; uint8_t x_46; lean_object* x_47; lean_object* x_48; +x_45 = lean_ctor_get(x_38, 1); +lean_inc(x_45); +lean_dec(x_38); +x_46 = 0; +x_47 = lean_box(x_46); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_45); +return x_48; +} +} +case 1: +{ +uint8_t x_49; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_49 = !lean_is_exclusive(x_38); +if (x_49 == 0) +{ +lean_object* x_50; uint8_t x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_38, 0); +lean_dec(x_50); +x_51 = 1; +x_52 = lean_box(x_51); +lean_ctor_set(x_38, 0, x_52); +return x_38; +} +else +{ +lean_object* x_53; uint8_t x_54; lean_object* x_55; lean_object* x_56; +x_53 = lean_ctor_get(x_38, 1); +lean_inc(x_53); +lean_dec(x_38); +x_54 = 1; +x_55 = lean_box(x_54); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_55); +lean_ctor_set(x_56, 1, x_53); +return x_56; +} +} +default: +{ +lean_object* x_57; lean_object* x_58; +x_57 = lean_ctor_get(x_38, 1); lean_inc(x_57); -x_58 = lean_unbox(x_57); -lean_dec(x_57); -switch (x_58) { -case 0: -{ -uint8_t x_59; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_59 = !lean_is_exclusive(x_56); -if (x_59 == 0) -{ -lean_object* x_60; uint8_t x_61; lean_object* x_62; -x_60 = lean_ctor_get(x_56, 0); -lean_dec(x_60); -x_61 = 0; -x_62 = lean_box(x_61); -lean_ctor_set(x_56, 0, x_62); -return x_56; -} -else -{ -lean_object* x_63; uint8_t x_64; lean_object* x_65; lean_object* x_66; -x_63 = lean_ctor_get(x_56, 1); -lean_inc(x_63); -lean_dec(x_56); -x_64 = 0; -x_65 = lean_box(x_64); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_65); -lean_ctor_set(x_66, 1, x_63); -return x_66; -} -} -case 1: -{ -uint8_t x_67; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_67 = !lean_is_exclusive(x_56); -if (x_67 == 0) -{ -lean_object* x_68; uint8_t x_69; lean_object* x_70; -x_68 = lean_ctor_get(x_56, 0); -lean_dec(x_68); -x_69 = 1; -x_70 = lean_box(x_69); -lean_ctor_set(x_56, 0, x_70); -return x_56; -} -else -{ -lean_object* x_71; uint8_t x_72; lean_object* x_73; lean_object* x_74; -x_71 = lean_ctor_get(x_56, 1); -lean_inc(x_71); -lean_dec(x_56); -x_72 = 1; -x_73 = lean_box(x_72); -x_74 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_74, 0, x_73); -lean_ctor_set(x_74, 1, x_71); -return x_74; -} -} -default: -{ -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_56, 1); -lean_inc(x_75); -lean_dec(x_56); +lean_dec(x_38); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_76 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_75); -if (lean_obj_tag(x_76) == 0) +x_58 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_57); +if (lean_obj_tag(x_58) == 0) { -lean_object* x_77; uint8_t x_78; -x_77 = lean_ctor_get(x_76, 0); +lean_object* x_59; uint8_t x_60; +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_unbox(x_59); +lean_dec(x_59); +switch (x_60) { +case 0: +{ +uint8_t x_61; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_61 = !lean_is_exclusive(x_58); +if (x_61 == 0) +{ +lean_object* x_62; uint8_t x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_58, 0); +lean_dec(x_62); +x_63 = 0; +x_64 = lean_box(x_63); +lean_ctor_set(x_58, 0, x_64); +return x_58; +} +else +{ +lean_object* x_65; uint8_t x_66; lean_object* x_67; lean_object* x_68; +x_65 = lean_ctor_get(x_58, 1); +lean_inc(x_65); +lean_dec(x_58); +x_66 = 0; +x_67 = lean_box(x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_65); +return x_68; +} +} +case 1: +{ +uint8_t x_69; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_69 = !lean_is_exclusive(x_58); +if (x_69 == 0) +{ +lean_object* x_70; uint8_t x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_58, 0); +lean_dec(x_70); +x_71 = 1; +x_72 = lean_box(x_71); +lean_ctor_set(x_58, 0, x_72); +return x_58; +} +else +{ +lean_object* x_73; uint8_t x_74; lean_object* x_75; lean_object* x_76; +x_73 = lean_ctor_get(x_58, 1); +lean_inc(x_73); +lean_dec(x_58); +x_74 = 1; +x_75 = lean_box(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_75); +lean_ctor_set(x_76, 1, x_73); +return x_76; +} +} +default: +{ +lean_object* x_77; lean_object* x_78; +x_77 = lean_ctor_get(x_58, 1); lean_inc(x_77); -x_78 = lean_unbox(x_77); -lean_dec(x_77); -switch (x_78) { -case 0: -{ -uint8_t x_79; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_79 = !lean_is_exclusive(x_76); -if (x_79 == 0) -{ -lean_object* x_80; uint8_t x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_76, 0); -lean_dec(x_80); -x_81 = 0; -x_82 = lean_box(x_81); -lean_ctor_set(x_76, 0, x_82); -return x_76; -} -else -{ -lean_object* x_83; uint8_t x_84; lean_object* x_85; lean_object* x_86; -x_83 = lean_ctor_get(x_76, 1); -lean_inc(x_83); -lean_dec(x_76); -x_84 = 0; -x_85 = lean_box(x_84); -x_86 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_86, 0, x_85); -lean_ctor_set(x_86, 1, x_83); -return x_86; -} -} -case 1: -{ -uint8_t x_87; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_87 = !lean_is_exclusive(x_76); -if (x_87 == 0) -{ -lean_object* x_88; uint8_t x_89; lean_object* x_90; -x_88 = lean_ctor_get(x_76, 0); -lean_dec(x_88); -x_89 = 1; -x_90 = lean_box(x_89); -lean_ctor_set(x_76, 0, x_90); -return x_76; -} -else -{ -lean_object* x_91; uint8_t x_92; lean_object* x_93; lean_object* x_94; -x_91 = lean_ctor_get(x_76, 1); -lean_inc(x_91); -lean_dec(x_76); -x_92 = 1; -x_93 = lean_box(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_91); -return x_94; -} -} -default: -{ -lean_object* x_95; lean_object* x_96; -x_95 = lean_ctor_get(x_76, 1); -lean_inc(x_95); -lean_dec(x_76); +lean_dec(x_58); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_96 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_95); -if (lean_obj_tag(x_96) == 0) +x_78 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_77); +if (lean_obj_tag(x_78) == 0) { -lean_object* x_97; uint8_t x_98; -x_97 = lean_ctor_get(x_96, 0); -lean_inc(x_97); -x_98 = lean_unbox(x_97); -lean_dec(x_97); -switch (x_98) { +lean_object* x_79; uint8_t x_80; +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +x_80 = lean_unbox(x_79); +lean_dec(x_79); +switch (x_80) { case 0: { -uint8_t x_99; +uint8_t x_81; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_99 = !lean_is_exclusive(x_96); -if (x_99 == 0) +x_81 = !lean_is_exclusive(x_78); +if (x_81 == 0) { -lean_object* x_100; uint8_t x_101; lean_object* x_102; -x_100 = lean_ctor_get(x_96, 0); -lean_dec(x_100); -x_101 = 0; -x_102 = lean_box(x_101); -lean_ctor_set(x_96, 0, x_102); -return x_96; +lean_object* x_82; uint8_t x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_78, 0); +lean_dec(x_82); +x_83 = 0; +x_84 = lean_box(x_83); +lean_ctor_set(x_78, 0, x_84); +return x_78; } else { -lean_object* x_103; uint8_t x_104; lean_object* x_105; lean_object* x_106; -x_103 = lean_ctor_get(x_96, 1); -lean_inc(x_103); -lean_dec(x_96); -x_104 = 0; -x_105 = lean_box(x_104); -x_106 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_106, 0, x_105); -lean_ctor_set(x_106, 1, x_103); -return x_106; +lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; +x_85 = lean_ctor_get(x_78, 1); +lean_inc(x_85); +lean_dec(x_78); +x_86 = 0; +x_87 = lean_box(x_86); +x_88 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_85); +return x_88; } } case 1: { -uint8_t x_107; +uint8_t x_89; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_107 = !lean_is_exclusive(x_96); -if (x_107 == 0) +x_89 = !lean_is_exclusive(x_78); +if (x_89 == 0) { -lean_object* x_108; uint8_t x_109; lean_object* x_110; -x_108 = lean_ctor_get(x_96, 0); -lean_dec(x_108); -x_109 = 1; -x_110 = lean_box(x_109); -lean_ctor_set(x_96, 0, x_110); -return x_96; +lean_object* x_90; uint8_t x_91; lean_object* x_92; +x_90 = lean_ctor_get(x_78, 0); +lean_dec(x_90); +x_91 = 1; +x_92 = lean_box(x_91); +lean_ctor_set(x_78, 0, x_92); +return x_78; } else { -lean_object* x_111; uint8_t x_112; lean_object* x_113; lean_object* x_114; -x_111 = lean_ctor_get(x_96, 1); -lean_inc(x_111); -lean_dec(x_96); -x_112 = 1; -x_113 = lean_box(x_112); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_113); -lean_ctor_set(x_114, 1, x_111); -return x_114; +lean_object* x_93; uint8_t x_94; lean_object* x_95; lean_object* x_96; +x_93 = lean_ctor_get(x_78, 1); +lean_inc(x_93); +lean_dec(x_78); +x_94 = 1; +x_95 = lean_box(x_94); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_95); +lean_ctor_set(x_96, 1, x_93); +return x_96; } } default: { -lean_object* x_115; lean_object* x_116; -x_115 = lean_ctor_get(x_96, 1); -lean_inc(x_115); -lean_dec(x_96); -x_116 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_115); +lean_object* x_97; lean_object* x_98; +x_97 = lean_ctor_get(x_78, 1); +lean_inc(x_97); +lean_dec(x_78); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_98 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_97); +if (lean_obj_tag(x_98) == 0) +{ +lean_object* x_99; uint8_t x_100; +x_99 = lean_ctor_get(x_98, 0); +lean_inc(x_99); +x_100 = lean_unbox(x_99); +lean_dec(x_99); +switch (x_100) { +case 0: +{ +uint8_t x_101; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_101 = !lean_is_exclusive(x_98); +if (x_101 == 0) +{ +lean_object* x_102; uint8_t x_103; lean_object* x_104; +x_102 = lean_ctor_get(x_98, 0); +lean_dec(x_102); +x_103 = 0; +x_104 = lean_box(x_103); +lean_ctor_set(x_98, 0, x_104); +return x_98; +} +else +{ +lean_object* x_105; uint8_t x_106; lean_object* x_107; lean_object* x_108; +x_105 = lean_ctor_get(x_98, 1); +lean_inc(x_105); +lean_dec(x_98); +x_106 = 0; +x_107 = lean_box(x_106); +x_108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_108, 0, x_107); +lean_ctor_set(x_108, 1, x_105); +return x_108; +} +} +case 1: +{ +uint8_t x_109; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_109 = !lean_is_exclusive(x_98); +if (x_109 == 0) +{ +lean_object* x_110; uint8_t x_111; lean_object* x_112; +x_110 = lean_ctor_get(x_98, 0); +lean_dec(x_110); +x_111 = 1; +x_112 = lean_box(x_111); +lean_ctor_set(x_98, 0, x_112); +return x_98; +} +else +{ +lean_object* x_113; uint8_t x_114; lean_object* x_115; lean_object* x_116; +x_113 = lean_ctor_get(x_98, 1); +lean_inc(x_113); +lean_dec(x_98); +x_114 = 1; +x_115 = lean_box(x_114); +x_116 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_113); return x_116; } } +default: +{ +lean_object* x_117; lean_object* x_118; +x_117 = lean_ctor_get(x_98, 1); +lean_inc(x_117); +lean_dec(x_98); +x_118 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_117); +return x_118; +} +} } else { -uint8_t x_117; +uint8_t x_119; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_117 = !lean_is_exclusive(x_96); -if (x_117 == 0) +x_119 = !lean_is_exclusive(x_98); +if (x_119 == 0) { -return x_96; +return x_98; } else { -lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_118 = lean_ctor_get(x_96, 0); -x_119 = lean_ctor_get(x_96, 1); -lean_inc(x_119); -lean_inc(x_118); -lean_dec(x_96); -x_120 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_120, 0, x_118); -lean_ctor_set(x_120, 1, x_119); -return x_120; +lean_object* x_120; lean_object* x_121; lean_object* x_122; +x_120 = lean_ctor_get(x_98, 0); +x_121 = lean_ctor_get(x_98, 1); +lean_inc(x_121); +lean_inc(x_120); +lean_dec(x_98); +x_122 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_122, 0, x_120); +lean_ctor_set(x_122, 1, x_121); +return x_122; } } } @@ -55775,30 +58635,30 @@ return x_120; } else { -uint8_t x_121; +uint8_t x_123; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_121 = !lean_is_exclusive(x_76); -if (x_121 == 0) +x_123 = !lean_is_exclusive(x_78); +if (x_123 == 0) { -return x_76; +return x_78; } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_122 = lean_ctor_get(x_76, 0); -x_123 = lean_ctor_get(x_76, 1); -lean_inc(x_123); -lean_inc(x_122); -lean_dec(x_76); -x_124 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_124, 0, x_122); -lean_ctor_set(x_124, 1, x_123); -return x_124; +lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_124 = lean_ctor_get(x_78, 0); +x_125 = lean_ctor_get(x_78, 1); +lean_inc(x_125); +lean_inc(x_124); +lean_dec(x_78); +x_126 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_126, 0, x_124); +lean_ctor_set(x_126, 1, x_125); +return x_126; } } } @@ -55806,30 +58666,30 @@ return x_124; } else { -uint8_t x_125; +uint8_t x_127; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_125 = !lean_is_exclusive(x_56); -if (x_125 == 0) +x_127 = !lean_is_exclusive(x_58); +if (x_127 == 0) { -return x_56; +return x_58; } else { -lean_object* x_126; lean_object* x_127; lean_object* x_128; -x_126 = lean_ctor_get(x_56, 0); -x_127 = lean_ctor_get(x_56, 1); -lean_inc(x_127); -lean_inc(x_126); -lean_dec(x_56); -x_128 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_128, 0, x_126); -lean_ctor_set(x_128, 1, x_127); -return x_128; +lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_128 = lean_ctor_get(x_58, 0); +x_129 = lean_ctor_get(x_58, 1); +lean_inc(x_129); +lean_inc(x_128); +lean_dec(x_58); +x_130 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_130, 0, x_128); +lean_ctor_set(x_130, 1, x_129); +return x_130; } } } @@ -55837,30 +58697,30 @@ return x_128; } else { -uint8_t x_129; +uint8_t x_131; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_129 = !lean_is_exclusive(x_36); -if (x_129 == 0) +x_131 = !lean_is_exclusive(x_38); +if (x_131 == 0) { -return x_36; +return x_38; } else { -lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_130 = lean_ctor_get(x_36, 0); -x_131 = lean_ctor_get(x_36, 1); -lean_inc(x_131); -lean_inc(x_130); -lean_dec(x_36); -x_132 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_132, 0, x_130); -lean_ctor_set(x_132, 1, x_131); -return x_132; +lean_object* x_132; lean_object* x_133; lean_object* x_134; +x_132 = lean_ctor_get(x_38, 0); +x_133 = lean_ctor_get(x_38, 1); +lean_inc(x_133); +lean_inc(x_132); +lean_dec(x_38); +x_134 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_134, 0, x_132); +lean_ctor_set(x_134, 1, x_133); +return x_134; } } } @@ -55868,516 +58728,516 @@ return x_132; } else { -uint8_t x_133; +uint8_t x_135; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_133 = !lean_is_exclusive(x_16); -if (x_133 == 0) +x_135 = !lean_is_exclusive(x_18); +if (x_135 == 0) { -return x_16; +return x_18; } else { -lean_object* x_134; lean_object* x_135; lean_object* x_136; -x_134 = lean_ctor_get(x_16, 0); -x_135 = lean_ctor_get(x_16, 1); -lean_inc(x_135); -lean_inc(x_134); -lean_dec(x_16); -x_136 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_136, 0, x_134); -lean_ctor_set(x_136, 1, x_135); -return x_136; +lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_136 = lean_ctor_get(x_18, 0); +x_137 = lean_ctor_get(x_18, 1); +lean_inc(x_137); +lean_inc(x_136); +lean_dec(x_18); +x_138 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_138, 0, x_136); +lean_ctor_set(x_138, 1, x_137); +return x_138; } } } else { -uint8_t x_137; -x_137 = l_Lean_Expr_isApp(x_2); -if (x_137 == 0) +uint8_t x_139; +x_139 = l_Lean_Expr_isApp(x_2); +if (x_139 == 0) { -lean_object* x_138; +lean_object* x_140; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_138 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_138) == 0) +x_140 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_15); +if (lean_obj_tag(x_140) == 0) { -lean_object* x_139; uint8_t x_140; -x_139 = lean_ctor_get(x_138, 0); -lean_inc(x_139); -x_140 = lean_unbox(x_139); -lean_dec(x_139); -switch (x_140) { +lean_object* x_141; uint8_t x_142; +x_141 = lean_ctor_get(x_140, 0); +lean_inc(x_141); +x_142 = lean_unbox(x_141); +lean_dec(x_141); +switch (x_142) { case 0: { -uint8_t x_141; +uint8_t x_143; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_141 = !lean_is_exclusive(x_138); -if (x_141 == 0) +x_143 = !lean_is_exclusive(x_140); +if (x_143 == 0) { -lean_object* x_142; uint8_t x_143; lean_object* x_144; -x_142 = lean_ctor_get(x_138, 0); -lean_dec(x_142); -x_143 = 0; -x_144 = lean_box(x_143); -lean_ctor_set(x_138, 0, x_144); -return x_138; +lean_object* x_144; uint8_t x_145; lean_object* x_146; +x_144 = lean_ctor_get(x_140, 0); +lean_dec(x_144); +x_145 = 0; +x_146 = lean_box(x_145); +lean_ctor_set(x_140, 0, x_146); +return x_140; } else { -lean_object* x_145; uint8_t x_146; lean_object* x_147; lean_object* x_148; -x_145 = lean_ctor_get(x_138, 1); -lean_inc(x_145); -lean_dec(x_138); -x_146 = 0; -x_147 = lean_box(x_146); -x_148 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_148, 0, x_147); -lean_ctor_set(x_148, 1, x_145); -return x_148; +lean_object* x_147; uint8_t x_148; lean_object* x_149; lean_object* x_150; +x_147 = lean_ctor_get(x_140, 1); +lean_inc(x_147); +lean_dec(x_140); +x_148 = 0; +x_149 = lean_box(x_148); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_147); +return x_150; } } case 1: { -uint8_t x_149; +uint8_t x_151; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_149 = !lean_is_exclusive(x_138); -if (x_149 == 0) +x_151 = !lean_is_exclusive(x_140); +if (x_151 == 0) { -lean_object* x_150; uint8_t x_151; lean_object* x_152; -x_150 = lean_ctor_get(x_138, 0); -lean_dec(x_150); -x_151 = 1; -x_152 = lean_box(x_151); -lean_ctor_set(x_138, 0, x_152); -return x_138; +lean_object* x_152; uint8_t x_153; lean_object* x_154; +x_152 = lean_ctor_get(x_140, 0); +lean_dec(x_152); +x_153 = 1; +x_154 = lean_box(x_153); +lean_ctor_set(x_140, 0, x_154); +return x_140; } else { -lean_object* x_153; uint8_t x_154; lean_object* x_155; lean_object* x_156; -x_153 = lean_ctor_get(x_138, 1); -lean_inc(x_153); -lean_dec(x_138); -x_154 = 1; -x_155 = lean_box(x_154); -x_156 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_156, 0, x_155); -lean_ctor_set(x_156, 1, x_153); -return x_156; +lean_object* x_155; uint8_t x_156; lean_object* x_157; lean_object* x_158; +x_155 = lean_ctor_get(x_140, 1); +lean_inc(x_155); +lean_dec(x_140); +x_156 = 1; +x_157 = lean_box(x_156); +x_158 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_158, 0, x_157); +lean_ctor_set(x_158, 1, x_155); +return x_158; } } default: { -lean_object* x_157; lean_object* x_158; -x_157 = lean_ctor_get(x_138, 1); -lean_inc(x_157); -lean_dec(x_138); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_158 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_157); -if (lean_obj_tag(x_158) == 0) -{ -lean_object* x_159; uint8_t x_160; -x_159 = lean_ctor_get(x_158, 0); +lean_object* x_159; lean_object* x_160; +x_159 = lean_ctor_get(x_140, 1); lean_inc(x_159); -x_160 = lean_unbox(x_159); -lean_dec(x_159); -switch (x_160) { -case 0: -{ -uint8_t x_161; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_161 = !lean_is_exclusive(x_158); -if (x_161 == 0) -{ -lean_object* x_162; uint8_t x_163; lean_object* x_164; -x_162 = lean_ctor_get(x_158, 0); -lean_dec(x_162); -x_163 = 0; -x_164 = lean_box(x_163); -lean_ctor_set(x_158, 0, x_164); -return x_158; -} -else -{ -lean_object* x_165; uint8_t x_166; lean_object* x_167; lean_object* x_168; -x_165 = lean_ctor_get(x_158, 1); -lean_inc(x_165); -lean_dec(x_158); -x_166 = 0; -x_167 = lean_box(x_166); -x_168 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_168, 0, x_167); -lean_ctor_set(x_168, 1, x_165); -return x_168; -} -} -case 1: -{ -uint8_t x_169; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_169 = !lean_is_exclusive(x_158); -if (x_169 == 0) -{ -lean_object* x_170; uint8_t x_171; lean_object* x_172; -x_170 = lean_ctor_get(x_158, 0); -lean_dec(x_170); -x_171 = 1; -x_172 = lean_box(x_171); -lean_ctor_set(x_158, 0, x_172); -return x_158; -} -else -{ -lean_object* x_173; uint8_t x_174; lean_object* x_175; lean_object* x_176; -x_173 = lean_ctor_get(x_158, 1); -lean_inc(x_173); -lean_dec(x_158); -x_174 = 1; -x_175 = lean_box(x_174); -x_176 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_176, 0, x_175); -lean_ctor_set(x_176, 1, x_173); -return x_176; -} -} -default: -{ -lean_object* x_177; lean_object* x_178; -x_177 = lean_ctor_get(x_158, 1); -lean_inc(x_177); -lean_dec(x_158); +lean_dec(x_140); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_178 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_177); -if (lean_obj_tag(x_178) == 0) +x_160 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_159); +if (lean_obj_tag(x_160) == 0) { -lean_object* x_179; uint8_t x_180; -x_179 = lean_ctor_get(x_178, 0); +lean_object* x_161; uint8_t x_162; +x_161 = lean_ctor_get(x_160, 0); +lean_inc(x_161); +x_162 = lean_unbox(x_161); +lean_dec(x_161); +switch (x_162) { +case 0: +{ +uint8_t x_163; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_163 = !lean_is_exclusive(x_160); +if (x_163 == 0) +{ +lean_object* x_164; uint8_t x_165; lean_object* x_166; +x_164 = lean_ctor_get(x_160, 0); +lean_dec(x_164); +x_165 = 0; +x_166 = lean_box(x_165); +lean_ctor_set(x_160, 0, x_166); +return x_160; +} +else +{ +lean_object* x_167; uint8_t x_168; lean_object* x_169; lean_object* x_170; +x_167 = lean_ctor_get(x_160, 1); +lean_inc(x_167); +lean_dec(x_160); +x_168 = 0; +x_169 = lean_box(x_168); +x_170 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_170, 0, x_169); +lean_ctor_set(x_170, 1, x_167); +return x_170; +} +} +case 1: +{ +uint8_t x_171; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_171 = !lean_is_exclusive(x_160); +if (x_171 == 0) +{ +lean_object* x_172; uint8_t x_173; lean_object* x_174; +x_172 = lean_ctor_get(x_160, 0); +lean_dec(x_172); +x_173 = 1; +x_174 = lean_box(x_173); +lean_ctor_set(x_160, 0, x_174); +return x_160; +} +else +{ +lean_object* x_175; uint8_t x_176; lean_object* x_177; lean_object* x_178; +x_175 = lean_ctor_get(x_160, 1); +lean_inc(x_175); +lean_dec(x_160); +x_176 = 1; +x_177 = lean_box(x_176); +x_178 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_178, 0, x_177); +lean_ctor_set(x_178, 1, x_175); +return x_178; +} +} +default: +{ +lean_object* x_179; lean_object* x_180; +x_179 = lean_ctor_get(x_160, 1); lean_inc(x_179); -x_180 = lean_unbox(x_179); -lean_dec(x_179); -switch (x_180) { -case 0: -{ -uint8_t x_181; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_181 = !lean_is_exclusive(x_178); -if (x_181 == 0) -{ -lean_object* x_182; uint8_t x_183; lean_object* x_184; -x_182 = lean_ctor_get(x_178, 0); -lean_dec(x_182); -x_183 = 0; -x_184 = lean_box(x_183); -lean_ctor_set(x_178, 0, x_184); -return x_178; -} -else -{ -lean_object* x_185; uint8_t x_186; lean_object* x_187; lean_object* x_188; -x_185 = lean_ctor_get(x_178, 1); -lean_inc(x_185); -lean_dec(x_178); -x_186 = 0; -x_187 = lean_box(x_186); -x_188 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_188, 0, x_187); -lean_ctor_set(x_188, 1, x_185); -return x_188; -} -} -case 1: -{ -uint8_t x_189; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_189 = !lean_is_exclusive(x_178); -if (x_189 == 0) -{ -lean_object* x_190; uint8_t x_191; lean_object* x_192; -x_190 = lean_ctor_get(x_178, 0); -lean_dec(x_190); -x_191 = 1; -x_192 = lean_box(x_191); -lean_ctor_set(x_178, 0, x_192); -return x_178; -} -else -{ -lean_object* x_193; uint8_t x_194; lean_object* x_195; lean_object* x_196; -x_193 = lean_ctor_get(x_178, 1); -lean_inc(x_193); -lean_dec(x_178); -x_194 = 1; -x_195 = lean_box(x_194); -x_196 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_196, 0, x_195); -lean_ctor_set(x_196, 1, x_193); -return x_196; -} -} -default: -{ -lean_object* x_197; lean_object* x_198; -x_197 = lean_ctor_get(x_178, 1); -lean_inc(x_197); -lean_dec(x_178); +lean_dec(x_160); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_198 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_197); -if (lean_obj_tag(x_198) == 0) +x_180 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_179); +if (lean_obj_tag(x_180) == 0) { -lean_object* x_199; uint8_t x_200; -x_199 = lean_ctor_get(x_198, 0); +lean_object* x_181; uint8_t x_182; +x_181 = lean_ctor_get(x_180, 0); +lean_inc(x_181); +x_182 = lean_unbox(x_181); +lean_dec(x_181); +switch (x_182) { +case 0: +{ +uint8_t x_183; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_183 = !lean_is_exclusive(x_180); +if (x_183 == 0) +{ +lean_object* x_184; uint8_t x_185; lean_object* x_186; +x_184 = lean_ctor_get(x_180, 0); +lean_dec(x_184); +x_185 = 0; +x_186 = lean_box(x_185); +lean_ctor_set(x_180, 0, x_186); +return x_180; +} +else +{ +lean_object* x_187; uint8_t x_188; lean_object* x_189; lean_object* x_190; +x_187 = lean_ctor_get(x_180, 1); +lean_inc(x_187); +lean_dec(x_180); +x_188 = 0; +x_189 = lean_box(x_188); +x_190 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_190, 0, x_189); +lean_ctor_set(x_190, 1, x_187); +return x_190; +} +} +case 1: +{ +uint8_t x_191; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_191 = !lean_is_exclusive(x_180); +if (x_191 == 0) +{ +lean_object* x_192; uint8_t x_193; lean_object* x_194; +x_192 = lean_ctor_get(x_180, 0); +lean_dec(x_192); +x_193 = 1; +x_194 = lean_box(x_193); +lean_ctor_set(x_180, 0, x_194); +return x_180; +} +else +{ +lean_object* x_195; uint8_t x_196; lean_object* x_197; lean_object* x_198; +x_195 = lean_ctor_get(x_180, 1); +lean_inc(x_195); +lean_dec(x_180); +x_196 = 1; +x_197 = lean_box(x_196); +x_198 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_198, 0, x_197); +lean_ctor_set(x_198, 1, x_195); +return x_198; +} +} +default: +{ +lean_object* x_199; lean_object* x_200; +x_199 = lean_ctor_get(x_180, 1); lean_inc(x_199); -x_200 = lean_unbox(x_199); -lean_dec(x_199); -switch (x_200) { -case 0: -{ -uint8_t x_201; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_201 = !lean_is_exclusive(x_198); -if (x_201 == 0) -{ -lean_object* x_202; uint8_t x_203; lean_object* x_204; -x_202 = lean_ctor_get(x_198, 0); -lean_dec(x_202); -x_203 = 0; -x_204 = lean_box(x_203); -lean_ctor_set(x_198, 0, x_204); -return x_198; -} -else -{ -lean_object* x_205; uint8_t x_206; lean_object* x_207; lean_object* x_208; -x_205 = lean_ctor_get(x_198, 1); -lean_inc(x_205); -lean_dec(x_198); -x_206 = 0; -x_207 = lean_box(x_206); -x_208 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_208, 0, x_207); -lean_ctor_set(x_208, 1, x_205); -return x_208; -} -} -case 1: -{ -uint8_t x_209; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_209 = !lean_is_exclusive(x_198); -if (x_209 == 0) -{ -lean_object* x_210; uint8_t x_211; lean_object* x_212; -x_210 = lean_ctor_get(x_198, 0); -lean_dec(x_210); -x_211 = 1; -x_212 = lean_box(x_211); -lean_ctor_set(x_198, 0, x_212); -return x_198; -} -else -{ -lean_object* x_213; uint8_t x_214; lean_object* x_215; lean_object* x_216; -x_213 = lean_ctor_get(x_198, 1); -lean_inc(x_213); -lean_dec(x_198); -x_214 = 1; -x_215 = lean_box(x_214); -x_216 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_216, 0, x_215); -lean_ctor_set(x_216, 1, x_213); -return x_216; -} -} -default: -{ -lean_object* x_217; lean_object* x_218; -x_217 = lean_ctor_get(x_198, 1); -lean_inc(x_217); -lean_dec(x_198); +lean_dec(x_180); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_218 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_217); -if (lean_obj_tag(x_218) == 0) +x_200 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_199); +if (lean_obj_tag(x_200) == 0) { -lean_object* x_219; uint8_t x_220; -x_219 = lean_ctor_get(x_218, 0); -lean_inc(x_219); -x_220 = lean_unbox(x_219); -lean_dec(x_219); -switch (x_220) { +lean_object* x_201; uint8_t x_202; +x_201 = lean_ctor_get(x_200, 0); +lean_inc(x_201); +x_202 = lean_unbox(x_201); +lean_dec(x_201); +switch (x_202) { case 0: { -uint8_t x_221; +uint8_t x_203; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_221 = !lean_is_exclusive(x_218); -if (x_221 == 0) +x_203 = !lean_is_exclusive(x_200); +if (x_203 == 0) { -lean_object* x_222; uint8_t x_223; lean_object* x_224; -x_222 = lean_ctor_get(x_218, 0); -lean_dec(x_222); -x_223 = 0; -x_224 = lean_box(x_223); -lean_ctor_set(x_218, 0, x_224); -return x_218; +lean_object* x_204; uint8_t x_205; lean_object* x_206; +x_204 = lean_ctor_get(x_200, 0); +lean_dec(x_204); +x_205 = 0; +x_206 = lean_box(x_205); +lean_ctor_set(x_200, 0, x_206); +return x_200; } else { -lean_object* x_225; uint8_t x_226; lean_object* x_227; lean_object* x_228; -x_225 = lean_ctor_get(x_218, 1); -lean_inc(x_225); -lean_dec(x_218); -x_226 = 0; -x_227 = lean_box(x_226); -x_228 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_228, 0, x_227); -lean_ctor_set(x_228, 1, x_225); -return x_228; +lean_object* x_207; uint8_t x_208; lean_object* x_209; lean_object* x_210; +x_207 = lean_ctor_get(x_200, 1); +lean_inc(x_207); +lean_dec(x_200); +x_208 = 0; +x_209 = lean_box(x_208); +x_210 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_210, 0, x_209); +lean_ctor_set(x_210, 1, x_207); +return x_210; } } case 1: { -uint8_t x_229; +uint8_t x_211; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_229 = !lean_is_exclusive(x_218); -if (x_229 == 0) +x_211 = !lean_is_exclusive(x_200); +if (x_211 == 0) { -lean_object* x_230; uint8_t x_231; lean_object* x_232; -x_230 = lean_ctor_get(x_218, 0); -lean_dec(x_230); -x_231 = 1; -x_232 = lean_box(x_231); -lean_ctor_set(x_218, 0, x_232); -return x_218; +lean_object* x_212; uint8_t x_213; lean_object* x_214; +x_212 = lean_ctor_get(x_200, 0); +lean_dec(x_212); +x_213 = 1; +x_214 = lean_box(x_213); +lean_ctor_set(x_200, 0, x_214); +return x_200; } else { -lean_object* x_233; uint8_t x_234; lean_object* x_235; lean_object* x_236; -x_233 = lean_ctor_get(x_218, 1); -lean_inc(x_233); -lean_dec(x_218); -x_234 = 1; -x_235 = lean_box(x_234); -x_236 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_236, 0, x_235); -lean_ctor_set(x_236, 1, x_233); -return x_236; +lean_object* x_215; uint8_t x_216; lean_object* x_217; lean_object* x_218; +x_215 = lean_ctor_get(x_200, 1); +lean_inc(x_215); +lean_dec(x_200); +x_216 = 1; +x_217 = lean_box(x_216); +x_218 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_218, 0, x_217); +lean_ctor_set(x_218, 1, x_215); +return x_218; } } default: { -lean_object* x_237; lean_object* x_238; -x_237 = lean_ctor_get(x_218, 1); -lean_inc(x_237); -lean_dec(x_218); -x_238 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_237); +lean_object* x_219; lean_object* x_220; +x_219 = lean_ctor_get(x_200, 1); +lean_inc(x_219); +lean_dec(x_200); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_220 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_219); +if (lean_obj_tag(x_220) == 0) +{ +lean_object* x_221; uint8_t x_222; +x_221 = lean_ctor_get(x_220, 0); +lean_inc(x_221); +x_222 = lean_unbox(x_221); +lean_dec(x_221); +switch (x_222) { +case 0: +{ +uint8_t x_223; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_223 = !lean_is_exclusive(x_220); +if (x_223 == 0) +{ +lean_object* x_224; uint8_t x_225; lean_object* x_226; +x_224 = lean_ctor_get(x_220, 0); +lean_dec(x_224); +x_225 = 0; +x_226 = lean_box(x_225); +lean_ctor_set(x_220, 0, x_226); +return x_220; +} +else +{ +lean_object* x_227; uint8_t x_228; lean_object* x_229; lean_object* x_230; +x_227 = lean_ctor_get(x_220, 1); +lean_inc(x_227); +lean_dec(x_220); +x_228 = 0; +x_229 = lean_box(x_228); +x_230 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_230, 0, x_229); +lean_ctor_set(x_230, 1, x_227); +return x_230; +} +} +case 1: +{ +uint8_t x_231; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_231 = !lean_is_exclusive(x_220); +if (x_231 == 0) +{ +lean_object* x_232; uint8_t x_233; lean_object* x_234; +x_232 = lean_ctor_get(x_220, 0); +lean_dec(x_232); +x_233 = 1; +x_234 = lean_box(x_233); +lean_ctor_set(x_220, 0, x_234); +return x_220; +} +else +{ +lean_object* x_235; uint8_t x_236; lean_object* x_237; lean_object* x_238; +x_235 = lean_ctor_get(x_220, 1); +lean_inc(x_235); +lean_dec(x_220); +x_236 = 1; +x_237 = lean_box(x_236); +x_238 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_238, 0, x_237); +lean_ctor_set(x_238, 1, x_235); return x_238; } } +default: +{ +lean_object* x_239; lean_object* x_240; +x_239 = lean_ctor_get(x_220, 1); +lean_inc(x_239); +lean_dec(x_220); +x_240 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_239); +return x_240; +} +} } else { -uint8_t x_239; +uint8_t x_241; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_239 = !lean_is_exclusive(x_218); -if (x_239 == 0) +x_241 = !lean_is_exclusive(x_220); +if (x_241 == 0) { -return x_218; +return x_220; } else { -lean_object* x_240; lean_object* x_241; lean_object* x_242; -x_240 = lean_ctor_get(x_218, 0); -x_241 = lean_ctor_get(x_218, 1); -lean_inc(x_241); -lean_inc(x_240); -lean_dec(x_218); -x_242 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_242, 0, x_240); -lean_ctor_set(x_242, 1, x_241); -return x_242; +lean_object* x_242; lean_object* x_243; lean_object* x_244; +x_242 = lean_ctor_get(x_220, 0); +x_243 = lean_ctor_get(x_220, 1); +lean_inc(x_243); +lean_inc(x_242); +lean_dec(x_220); +x_244 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_244, 0, x_242); +lean_ctor_set(x_244, 1, x_243); +return x_244; } } } @@ -56385,30 +59245,30 @@ return x_242; } else { -uint8_t x_243; +uint8_t x_245; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_243 = !lean_is_exclusive(x_198); -if (x_243 == 0) +x_245 = !lean_is_exclusive(x_200); +if (x_245 == 0) { -return x_198; +return x_200; } else { -lean_object* x_244; lean_object* x_245; lean_object* x_246; -x_244 = lean_ctor_get(x_198, 0); -x_245 = lean_ctor_get(x_198, 1); -lean_inc(x_245); -lean_inc(x_244); -lean_dec(x_198); -x_246 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_246, 0, x_244); -lean_ctor_set(x_246, 1, x_245); -return x_246; +lean_object* x_246; lean_object* x_247; lean_object* x_248; +x_246 = lean_ctor_get(x_200, 0); +x_247 = lean_ctor_get(x_200, 1); +lean_inc(x_247); +lean_inc(x_246); +lean_dec(x_200); +x_248 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_248, 0, x_246); +lean_ctor_set(x_248, 1, x_247); +return x_248; } } } @@ -56416,30 +59276,30 @@ return x_246; } else { -uint8_t x_247; +uint8_t x_249; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_247 = !lean_is_exclusive(x_178); -if (x_247 == 0) +x_249 = !lean_is_exclusive(x_180); +if (x_249 == 0) { -return x_178; +return x_180; } else { -lean_object* x_248; lean_object* x_249; lean_object* x_250; -x_248 = lean_ctor_get(x_178, 0); -x_249 = lean_ctor_get(x_178, 1); -lean_inc(x_249); -lean_inc(x_248); -lean_dec(x_178); -x_250 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_250, 0, x_248); -lean_ctor_set(x_250, 1, x_249); -return x_250; +lean_object* x_250; lean_object* x_251; lean_object* x_252; +x_250 = lean_ctor_get(x_180, 0); +x_251 = lean_ctor_get(x_180, 1); +lean_inc(x_251); +lean_inc(x_250); +lean_dec(x_180); +x_252 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_252, 0, x_250); +lean_ctor_set(x_252, 1, x_251); +return x_252; } } } @@ -56447,30 +59307,30 @@ return x_250; } else { -uint8_t x_251; +uint8_t x_253; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_251 = !lean_is_exclusive(x_158); -if (x_251 == 0) +x_253 = !lean_is_exclusive(x_160); +if (x_253 == 0) { -return x_158; +return x_160; } else { -lean_object* x_252; lean_object* x_253; lean_object* x_254; -x_252 = lean_ctor_get(x_158, 0); -x_253 = lean_ctor_get(x_158, 1); -lean_inc(x_253); -lean_inc(x_252); -lean_dec(x_158); -x_254 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_254, 0, x_252); -lean_ctor_set(x_254, 1, x_253); -return x_254; +lean_object* x_254; lean_object* x_255; lean_object* x_256; +x_254 = lean_ctor_get(x_160, 0); +x_255 = lean_ctor_get(x_160, 1); +lean_inc(x_255); +lean_inc(x_254); +lean_dec(x_160); +x_256 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_256, 0, x_254); +lean_ctor_set(x_256, 1, x_255); +return x_256; } } } @@ -56478,423 +59338,423 @@ return x_254; } else { -uint8_t x_255; +uint8_t x_257; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_255 = !lean_is_exclusive(x_138); -if (x_255 == 0) +x_257 = !lean_is_exclusive(x_140); +if (x_257 == 0) { -return x_138; +return x_140; } else { -lean_object* x_256; lean_object* x_257; lean_object* x_258; -x_256 = lean_ctor_get(x_138, 0); -x_257 = lean_ctor_get(x_138, 1); -lean_inc(x_257); -lean_inc(x_256); -lean_dec(x_138); -x_258 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_258, 0, x_256); -lean_ctor_set(x_258, 1, x_257); -return x_258; +lean_object* x_258; lean_object* x_259; lean_object* x_260; +x_258 = lean_ctor_get(x_140, 0); +x_259 = lean_ctor_get(x_140, 1); +lean_inc(x_259); +lean_inc(x_258); +lean_dec(x_140); +x_260 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_260, 0, x_258); +lean_ctor_set(x_260, 1, x_259); +return x_260; } } } else { -lean_object* x_259; +lean_object* x_261; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_259 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_259) == 0) +x_261 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_15); +if (lean_obj_tag(x_261) == 0) { -lean_object* x_260; uint8_t x_261; -x_260 = lean_ctor_get(x_259, 0); -lean_inc(x_260); -x_261 = lean_unbox(x_260); -lean_dec(x_260); -switch (x_261) { +lean_object* x_262; uint8_t x_263; +x_262 = lean_ctor_get(x_261, 0); +lean_inc(x_262); +x_263 = lean_unbox(x_262); +lean_dec(x_262); +switch (x_263) { case 0: { -uint8_t x_262; +uint8_t x_264; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_262 = !lean_is_exclusive(x_259); -if (x_262 == 0) +x_264 = !lean_is_exclusive(x_261); +if (x_264 == 0) { -lean_object* x_263; uint8_t x_264; lean_object* x_265; -x_263 = lean_ctor_get(x_259, 0); -lean_dec(x_263); -x_264 = 0; -x_265 = lean_box(x_264); -lean_ctor_set(x_259, 0, x_265); -return x_259; +lean_object* x_265; uint8_t x_266; lean_object* x_267; +x_265 = lean_ctor_get(x_261, 0); +lean_dec(x_265); +x_266 = 0; +x_267 = lean_box(x_266); +lean_ctor_set(x_261, 0, x_267); +return x_261; } else { -lean_object* x_266; uint8_t x_267; lean_object* x_268; lean_object* x_269; -x_266 = lean_ctor_get(x_259, 1); -lean_inc(x_266); -lean_dec(x_259); -x_267 = 0; -x_268 = lean_box(x_267); -x_269 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_269, 0, x_268); -lean_ctor_set(x_269, 1, x_266); -return x_269; +lean_object* x_268; uint8_t x_269; lean_object* x_270; lean_object* x_271; +x_268 = lean_ctor_get(x_261, 1); +lean_inc(x_268); +lean_dec(x_261); +x_269 = 0; +x_270 = lean_box(x_269); +x_271 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_271, 0, x_270); +lean_ctor_set(x_271, 1, x_268); +return x_271; } } case 1: { -uint8_t x_270; +uint8_t x_272; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_270 = !lean_is_exclusive(x_259); -if (x_270 == 0) +x_272 = !lean_is_exclusive(x_261); +if (x_272 == 0) { -lean_object* x_271; uint8_t x_272; lean_object* x_273; -x_271 = lean_ctor_get(x_259, 0); -lean_dec(x_271); -x_272 = 1; -x_273 = lean_box(x_272); -lean_ctor_set(x_259, 0, x_273); -return x_259; +lean_object* x_273; uint8_t x_274; lean_object* x_275; +x_273 = lean_ctor_get(x_261, 0); +lean_dec(x_273); +x_274 = 1; +x_275 = lean_box(x_274); +lean_ctor_set(x_261, 0, x_275); +return x_261; } else { -lean_object* x_274; uint8_t x_275; lean_object* x_276; lean_object* x_277; -x_274 = lean_ctor_get(x_259, 1); -lean_inc(x_274); -lean_dec(x_259); -x_275 = 1; -x_276 = lean_box(x_275); -x_277 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_277, 0, x_276); -lean_ctor_set(x_277, 1, x_274); -return x_277; +lean_object* x_276; uint8_t x_277; lean_object* x_278; lean_object* x_279; +x_276 = lean_ctor_get(x_261, 1); +lean_inc(x_276); +lean_dec(x_261); +x_277 = 1; +x_278 = lean_box(x_277); +x_279 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_279, 0, x_278); +lean_ctor_set(x_279, 1, x_276); +return x_279; } } default: { -lean_object* x_278; lean_object* x_279; -x_278 = lean_ctor_get(x_259, 1); -lean_inc(x_278); -lean_dec(x_259); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_279 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_278); -if (lean_obj_tag(x_279) == 0) -{ -lean_object* x_280; uint8_t x_281; -x_280 = lean_ctor_get(x_279, 0); +lean_object* x_280; lean_object* x_281; +x_280 = lean_ctor_get(x_261, 1); lean_inc(x_280); -x_281 = lean_unbox(x_280); -lean_dec(x_280); -switch (x_281) { -case 0: -{ -uint8_t x_282; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_282 = !lean_is_exclusive(x_279); -if (x_282 == 0) -{ -lean_object* x_283; uint8_t x_284; lean_object* x_285; -x_283 = lean_ctor_get(x_279, 0); -lean_dec(x_283); -x_284 = 0; -x_285 = lean_box(x_284); -lean_ctor_set(x_279, 0, x_285); -return x_279; -} -else -{ -lean_object* x_286; uint8_t x_287; lean_object* x_288; lean_object* x_289; -x_286 = lean_ctor_get(x_279, 1); -lean_inc(x_286); -lean_dec(x_279); -x_287 = 0; -x_288 = lean_box(x_287); -x_289 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_289, 0, x_288); -lean_ctor_set(x_289, 1, x_286); -return x_289; -} -} -case 1: -{ -uint8_t x_290; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_290 = !lean_is_exclusive(x_279); -if (x_290 == 0) -{ -lean_object* x_291; uint8_t x_292; lean_object* x_293; -x_291 = lean_ctor_get(x_279, 0); -lean_dec(x_291); -x_292 = 1; -x_293 = lean_box(x_292); -lean_ctor_set(x_279, 0, x_293); -return x_279; -} -else -{ -lean_object* x_294; uint8_t x_295; lean_object* x_296; lean_object* x_297; -x_294 = lean_ctor_get(x_279, 1); -lean_inc(x_294); -lean_dec(x_279); -x_295 = 1; -x_296 = lean_box(x_295); -x_297 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_297, 0, x_296); -lean_ctor_set(x_297, 1, x_294); -return x_297; -} -} -default: -{ -lean_object* x_298; lean_object* x_299; -x_298 = lean_ctor_get(x_279, 1); -lean_inc(x_298); -lean_dec(x_279); +lean_dec(x_261); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_299 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_298); -if (lean_obj_tag(x_299) == 0) +x_281 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_280); +if (lean_obj_tag(x_281) == 0) { -lean_object* x_300; uint8_t x_301; -x_300 = lean_ctor_get(x_299, 0); +lean_object* x_282; uint8_t x_283; +x_282 = lean_ctor_get(x_281, 0); +lean_inc(x_282); +x_283 = lean_unbox(x_282); +lean_dec(x_282); +switch (x_283) { +case 0: +{ +uint8_t x_284; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_284 = !lean_is_exclusive(x_281); +if (x_284 == 0) +{ +lean_object* x_285; uint8_t x_286; lean_object* x_287; +x_285 = lean_ctor_get(x_281, 0); +lean_dec(x_285); +x_286 = 0; +x_287 = lean_box(x_286); +lean_ctor_set(x_281, 0, x_287); +return x_281; +} +else +{ +lean_object* x_288; uint8_t x_289; lean_object* x_290; lean_object* x_291; +x_288 = lean_ctor_get(x_281, 1); +lean_inc(x_288); +lean_dec(x_281); +x_289 = 0; +x_290 = lean_box(x_289); +x_291 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_291, 0, x_290); +lean_ctor_set(x_291, 1, x_288); +return x_291; +} +} +case 1: +{ +uint8_t x_292; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_292 = !lean_is_exclusive(x_281); +if (x_292 == 0) +{ +lean_object* x_293; uint8_t x_294; lean_object* x_295; +x_293 = lean_ctor_get(x_281, 0); +lean_dec(x_293); +x_294 = 1; +x_295 = lean_box(x_294); +lean_ctor_set(x_281, 0, x_295); +return x_281; +} +else +{ +lean_object* x_296; uint8_t x_297; lean_object* x_298; lean_object* x_299; +x_296 = lean_ctor_get(x_281, 1); +lean_inc(x_296); +lean_dec(x_281); +x_297 = 1; +x_298 = lean_box(x_297); +x_299 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_299, 0, x_298); +lean_ctor_set(x_299, 1, x_296); +return x_299; +} +} +default: +{ +lean_object* x_300; lean_object* x_301; +x_300 = lean_ctor_get(x_281, 1); lean_inc(x_300); -x_301 = lean_unbox(x_300); -lean_dec(x_300); -switch (x_301) { -case 0: -{ -uint8_t x_302; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_302 = !lean_is_exclusive(x_299); -if (x_302 == 0) -{ -lean_object* x_303; uint8_t x_304; lean_object* x_305; -x_303 = lean_ctor_get(x_299, 0); -lean_dec(x_303); -x_304 = 0; -x_305 = lean_box(x_304); -lean_ctor_set(x_299, 0, x_305); -return x_299; -} -else -{ -lean_object* x_306; uint8_t x_307; lean_object* x_308; lean_object* x_309; -x_306 = lean_ctor_get(x_299, 1); -lean_inc(x_306); -lean_dec(x_299); -x_307 = 0; -x_308 = lean_box(x_307); -x_309 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_309, 0, x_308); -lean_ctor_set(x_309, 1, x_306); -return x_309; -} -} -case 1: -{ -uint8_t x_310; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_310 = !lean_is_exclusive(x_299); -if (x_310 == 0) -{ -lean_object* x_311; uint8_t x_312; lean_object* x_313; -x_311 = lean_ctor_get(x_299, 0); -lean_dec(x_311); -x_312 = 1; -x_313 = lean_box(x_312); -lean_ctor_set(x_299, 0, x_313); -return x_299; -} -else -{ -lean_object* x_314; uint8_t x_315; lean_object* x_316; lean_object* x_317; -x_314 = lean_ctor_get(x_299, 1); -lean_inc(x_314); -lean_dec(x_299); -x_315 = 1; -x_316 = lean_box(x_315); -x_317 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_317, 0, x_316); -lean_ctor_set(x_317, 1, x_314); -return x_317; -} -} -default: -{ -lean_object* x_318; lean_object* x_319; -x_318 = lean_ctor_get(x_299, 1); -lean_inc(x_318); -lean_dec(x_299); +lean_dec(x_281); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_319 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_318); -if (lean_obj_tag(x_319) == 0) +x_301 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_300); +if (lean_obj_tag(x_301) == 0) { -lean_object* x_320; uint8_t x_321; -x_320 = lean_ctor_get(x_319, 0); -lean_inc(x_320); -x_321 = lean_unbox(x_320); -lean_dec(x_320); -switch (x_321) { +lean_object* x_302; uint8_t x_303; +x_302 = lean_ctor_get(x_301, 0); +lean_inc(x_302); +x_303 = lean_unbox(x_302); +lean_dec(x_302); +switch (x_303) { case 0: { -uint8_t x_322; +uint8_t x_304; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_322 = !lean_is_exclusive(x_319); -if (x_322 == 0) +x_304 = !lean_is_exclusive(x_301); +if (x_304 == 0) { -lean_object* x_323; uint8_t x_324; lean_object* x_325; -x_323 = lean_ctor_get(x_319, 0); -lean_dec(x_323); -x_324 = 0; -x_325 = lean_box(x_324); -lean_ctor_set(x_319, 0, x_325); -return x_319; +lean_object* x_305; uint8_t x_306; lean_object* x_307; +x_305 = lean_ctor_get(x_301, 0); +lean_dec(x_305); +x_306 = 0; +x_307 = lean_box(x_306); +lean_ctor_set(x_301, 0, x_307); +return x_301; } else { -lean_object* x_326; uint8_t x_327; lean_object* x_328; lean_object* x_329; -x_326 = lean_ctor_get(x_319, 1); -lean_inc(x_326); -lean_dec(x_319); -x_327 = 0; -x_328 = lean_box(x_327); -x_329 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_329, 0, x_328); -lean_ctor_set(x_329, 1, x_326); -return x_329; +lean_object* x_308; uint8_t x_309; lean_object* x_310; lean_object* x_311; +x_308 = lean_ctor_get(x_301, 1); +lean_inc(x_308); +lean_dec(x_301); +x_309 = 0; +x_310 = lean_box(x_309); +x_311 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_311, 0, x_310); +lean_ctor_set(x_311, 1, x_308); +return x_311; } } case 1: { -uint8_t x_330; +uint8_t x_312; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_330 = !lean_is_exclusive(x_319); -if (x_330 == 0) +x_312 = !lean_is_exclusive(x_301); +if (x_312 == 0) { -lean_object* x_331; uint8_t x_332; lean_object* x_333; -x_331 = lean_ctor_get(x_319, 0); -lean_dec(x_331); -x_332 = 1; -x_333 = lean_box(x_332); -lean_ctor_set(x_319, 0, x_333); -return x_319; +lean_object* x_313; uint8_t x_314; lean_object* x_315; +x_313 = lean_ctor_get(x_301, 0); +lean_dec(x_313); +x_314 = 1; +x_315 = lean_box(x_314); +lean_ctor_set(x_301, 0, x_315); +return x_301; } else { -lean_object* x_334; uint8_t x_335; lean_object* x_336; lean_object* x_337; -x_334 = lean_ctor_get(x_319, 1); -lean_inc(x_334); -lean_dec(x_319); -x_335 = 1; -x_336 = lean_box(x_335); -x_337 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_337, 0, x_336); -lean_ctor_set(x_337, 1, x_334); -return x_337; +lean_object* x_316; uint8_t x_317; lean_object* x_318; lean_object* x_319; +x_316 = lean_ctor_get(x_301, 1); +lean_inc(x_316); +lean_dec(x_301); +x_317 = 1; +x_318 = lean_box(x_317); +x_319 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_319, 0, x_318); +lean_ctor_set(x_319, 1, x_316); +return x_319; } } default: { -lean_object* x_338; lean_object* x_339; -x_338 = lean_ctor_get(x_319, 1); -lean_inc(x_338); -lean_dec(x_319); -x_339 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqApp(x_1, x_2, x_3, x_4, x_5, x_6, x_338); +lean_object* x_320; lean_object* x_321; +x_320 = lean_ctor_get(x_301, 1); +lean_inc(x_320); +lean_dec(x_301); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_321 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_320); +if (lean_obj_tag(x_321) == 0) +{ +lean_object* x_322; uint8_t x_323; +x_322 = lean_ctor_get(x_321, 0); +lean_inc(x_322); +x_323 = lean_unbox(x_322); +lean_dec(x_322); +switch (x_323) { +case 0: +{ +uint8_t x_324; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_324 = !lean_is_exclusive(x_321); +if (x_324 == 0) +{ +lean_object* x_325; uint8_t x_326; lean_object* x_327; +x_325 = lean_ctor_get(x_321, 0); +lean_dec(x_325); +x_326 = 0; +x_327 = lean_box(x_326); +lean_ctor_set(x_321, 0, x_327); +return x_321; +} +else +{ +lean_object* x_328; uint8_t x_329; lean_object* x_330; lean_object* x_331; +x_328 = lean_ctor_get(x_321, 1); +lean_inc(x_328); +lean_dec(x_321); +x_329 = 0; +x_330 = lean_box(x_329); +x_331 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_331, 0, x_330); +lean_ctor_set(x_331, 1, x_328); +return x_331; +} +} +case 1: +{ +uint8_t x_332; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_332 = !lean_is_exclusive(x_321); +if (x_332 == 0) +{ +lean_object* x_333; uint8_t x_334; lean_object* x_335; +x_333 = lean_ctor_get(x_321, 0); +lean_dec(x_333); +x_334 = 1; +x_335 = lean_box(x_334); +lean_ctor_set(x_321, 0, x_335); +return x_321; +} +else +{ +lean_object* x_336; uint8_t x_337; lean_object* x_338; lean_object* x_339; +x_336 = lean_ctor_get(x_321, 1); +lean_inc(x_336); +lean_dec(x_321); +x_337 = 1; +x_338 = lean_box(x_337); +x_339 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_339, 0, x_338); +lean_ctor_set(x_339, 1, x_336); return x_339; } } +default: +{ +lean_object* x_340; lean_object* x_341; +x_340 = lean_ctor_get(x_321, 1); +lean_inc(x_340); +lean_dec(x_321); +x_341 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqApp(x_1, x_2, x_3, x_4, x_5, x_6, x_340); +return x_341; +} +} } else { -uint8_t x_340; +uint8_t x_342; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_340 = !lean_is_exclusive(x_319); -if (x_340 == 0) +x_342 = !lean_is_exclusive(x_321); +if (x_342 == 0) { -return x_319; +return x_321; } else { -lean_object* x_341; lean_object* x_342; lean_object* x_343; -x_341 = lean_ctor_get(x_319, 0); -x_342 = lean_ctor_get(x_319, 1); -lean_inc(x_342); -lean_inc(x_341); -lean_dec(x_319); -x_343 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_343, 0, x_341); -lean_ctor_set(x_343, 1, x_342); -return x_343; +lean_object* x_343; lean_object* x_344; lean_object* x_345; +x_343 = lean_ctor_get(x_321, 0); +x_344 = lean_ctor_get(x_321, 1); +lean_inc(x_344); +lean_inc(x_343); +lean_dec(x_321); +x_345 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_345, 0, x_343); +lean_ctor_set(x_345, 1, x_344); +return x_345; } } } @@ -56902,30 +59762,30 @@ return x_343; } else { -uint8_t x_344; +uint8_t x_346; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_344 = !lean_is_exclusive(x_299); -if (x_344 == 0) +x_346 = !lean_is_exclusive(x_301); +if (x_346 == 0) { -return x_299; +return x_301; } else { -lean_object* x_345; lean_object* x_346; lean_object* x_347; -x_345 = lean_ctor_get(x_299, 0); -x_346 = lean_ctor_get(x_299, 1); -lean_inc(x_346); -lean_inc(x_345); -lean_dec(x_299); -x_347 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_347, 0, x_345); -lean_ctor_set(x_347, 1, x_346); -return x_347; +lean_object* x_347; lean_object* x_348; lean_object* x_349; +x_347 = lean_ctor_get(x_301, 0); +x_348 = lean_ctor_get(x_301, 1); +lean_inc(x_348); +lean_inc(x_347); +lean_dec(x_301); +x_349 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_349, 0, x_347); +lean_ctor_set(x_349, 1, x_348); +return x_349; } } } @@ -56933,30 +59793,30 @@ return x_347; } else { -uint8_t x_348; +uint8_t x_350; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_348 = !lean_is_exclusive(x_279); -if (x_348 == 0) +x_350 = !lean_is_exclusive(x_281); +if (x_350 == 0) { -return x_279; +return x_281; } else { -lean_object* x_349; lean_object* x_350; lean_object* x_351; -x_349 = lean_ctor_get(x_279, 0); -x_350 = lean_ctor_get(x_279, 1); -lean_inc(x_350); -lean_inc(x_349); -lean_dec(x_279); -x_351 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_351, 0, x_349); -lean_ctor_set(x_351, 1, x_350); -return x_351; +lean_object* x_351; lean_object* x_352; lean_object* x_353; +x_351 = lean_ctor_get(x_281, 0); +x_352 = lean_ctor_get(x_281, 1); +lean_inc(x_352); +lean_inc(x_351); +lean_dec(x_281); +x_353 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_353, 0, x_351); +lean_ctor_set(x_353, 1, x_352); +return x_353; } } } @@ -56964,30 +59824,30 @@ return x_351; } else { -uint8_t x_352; +uint8_t x_354; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_352 = !lean_is_exclusive(x_259); -if (x_352 == 0) +x_354 = !lean_is_exclusive(x_261); +if (x_354 == 0) { -return x_259; +return x_261; } else { -lean_object* x_353; lean_object* x_354; lean_object* x_355; -x_353 = lean_ctor_get(x_259, 0); -x_354 = lean_ctor_get(x_259, 1); -lean_inc(x_354); -lean_inc(x_353); -lean_dec(x_259); -x_355 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_355, 0, x_353); -lean_ctor_set(x_355, 1, x_354); -return x_355; +lean_object* x_355; lean_object* x_356; lean_object* x_357; +x_355 = lean_ctor_get(x_261, 0); +x_356 = lean_ctor_get(x_261, 1); +lean_inc(x_356); +lean_inc(x_355); +lean_dec(x_261); +x_357 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_357, 0, x_355); +lean_ctor_set(x_357, 1, x_356); +return x_357; } } } @@ -56996,950 +59856,950 @@ return x_355; } else { -lean_object* x_560; lean_object* x_561; lean_object* x_562; uint8_t x_821; -x_560 = lean_ctor_get(x_10, 0); -x_561 = lean_ctor_get(x_10, 1); -lean_inc(x_561); -lean_inc(x_560); -lean_dec(x_10); -x_821 = lean_unbox(x_560); -lean_dec(x_560); -if (x_821 == 0) -{ -uint8_t x_822; -x_822 = l_Lean_Expr_isConst(x_1); -if (x_822 == 0) -{ -lean_object* x_823; -x_823 = lean_box(0); -x_562 = x_823; -goto block_820; -} -else +lean_object* x_562; lean_object* x_563; lean_object* x_564; uint8_t x_823; +x_562 = lean_ctor_get(x_12, 0); +x_563 = lean_ctor_get(x_12, 1); +lean_inc(x_563); +lean_inc(x_562); +lean_dec(x_12); +x_823 = lean_unbox(x_562); +lean_dec(x_562); +if (x_823 == 0) { uint8_t x_824; -x_824 = l_Lean_Expr_isConst(x_2); +x_824 = l_Lean_Expr_isConst(x_1); if (x_824 == 0) { lean_object* x_825; x_825 = lean_box(0); -x_562 = x_825; -goto block_820; +x_564 = x_825; +goto block_822; } else { -lean_object* x_826; lean_object* x_827; uint8_t x_828; -x_826 = l_Lean_Expr_constName_x21(x_1); -x_827 = l_Lean_Expr_constName_x21(x_2); -x_828 = lean_name_eq(x_826, x_827); -lean_dec(x_827); -lean_dec(x_826); -if (x_828 == 0) +uint8_t x_826; +x_826 = l_Lean_Expr_isConst(x_2); +if (x_826 == 0) { -lean_object* x_829; -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_829 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_561); -if (lean_obj_tag(x_829) == 0) +lean_object* x_827; +x_827 = lean_box(0); +x_564 = x_827; +goto block_822; +} +else { -lean_object* x_830; uint8_t x_831; -x_830 = lean_ctor_get(x_829, 0); -lean_inc(x_830); -x_831 = lean_unbox(x_830); -lean_dec(x_830); -switch (x_831) { -case 0: -{ -lean_object* x_832; lean_object* x_833; uint8_t x_834; lean_object* x_835; lean_object* x_836; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_832 = lean_ctor_get(x_829, 1); -lean_inc(x_832); -if (lean_is_exclusive(x_829)) { - lean_ctor_release(x_829, 0); - lean_ctor_release(x_829, 1); - x_833 = x_829; -} else { - lean_dec_ref(x_829); - x_833 = lean_box(0); -} -x_834 = 0; -x_835 = lean_box(x_834); -if (lean_is_scalar(x_833)) { - x_836 = lean_alloc_ctor(0, 2, 0); -} else { - x_836 = x_833; -} -lean_ctor_set(x_836, 0, x_835); -lean_ctor_set(x_836, 1, x_832); -return x_836; -} -case 1: -{ -lean_object* x_837; lean_object* x_838; uint8_t x_839; lean_object* x_840; lean_object* x_841; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_837 = lean_ctor_get(x_829, 1); -lean_inc(x_837); -if (lean_is_exclusive(x_829)) { - lean_ctor_release(x_829, 0); - lean_ctor_release(x_829, 1); - x_838 = x_829; -} else { - lean_dec_ref(x_829); - x_838 = lean_box(0); -} -x_839 = 1; -x_840 = lean_box(x_839); -if (lean_is_scalar(x_838)) { - x_841 = lean_alloc_ctor(0, 2, 0); -} else { - x_841 = x_838; -} -lean_ctor_set(x_841, 0, x_840); -lean_ctor_set(x_841, 1, x_837); -return x_841; -} -default: -{ -lean_object* x_842; lean_object* x_843; -x_842 = lean_ctor_get(x_829, 1); -lean_inc(x_842); +lean_object* x_828; lean_object* x_829; uint8_t x_830; +x_828 = l_Lean_Expr_constName_x21(x_1); +x_829 = l_Lean_Expr_constName_x21(x_2); +x_830 = lean_name_eq(x_828, x_829); lean_dec(x_829); +lean_dec(x_828); +if (x_830 == 0) +{ +lean_object* x_831; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_843 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_842); -if (lean_obj_tag(x_843) == 0) +x_831 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_563); +if (lean_obj_tag(x_831) == 0) { -lean_object* x_844; uint8_t x_845; -x_844 = lean_ctor_get(x_843, 0); +lean_object* x_832; uint8_t x_833; +x_832 = lean_ctor_get(x_831, 0); +lean_inc(x_832); +x_833 = lean_unbox(x_832); +lean_dec(x_832); +switch (x_833) { +case 0: +{ +lean_object* x_834; lean_object* x_835; uint8_t x_836; lean_object* x_837; lean_object* x_838; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_834 = lean_ctor_get(x_831, 1); +lean_inc(x_834); +if (lean_is_exclusive(x_831)) { + lean_ctor_release(x_831, 0); + lean_ctor_release(x_831, 1); + x_835 = x_831; +} else { + lean_dec_ref(x_831); + x_835 = lean_box(0); +} +x_836 = 0; +x_837 = lean_box(x_836); +if (lean_is_scalar(x_835)) { + x_838 = lean_alloc_ctor(0, 2, 0); +} else { + x_838 = x_835; +} +lean_ctor_set(x_838, 0, x_837); +lean_ctor_set(x_838, 1, x_834); +return x_838; +} +case 1: +{ +lean_object* x_839; lean_object* x_840; uint8_t x_841; lean_object* x_842; lean_object* x_843; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_839 = lean_ctor_get(x_831, 1); +lean_inc(x_839); +if (lean_is_exclusive(x_831)) { + lean_ctor_release(x_831, 0); + lean_ctor_release(x_831, 1); + x_840 = x_831; +} else { + lean_dec_ref(x_831); + x_840 = lean_box(0); +} +x_841 = 1; +x_842 = lean_box(x_841); +if (lean_is_scalar(x_840)) { + x_843 = lean_alloc_ctor(0, 2, 0); +} else { + x_843 = x_840; +} +lean_ctor_set(x_843, 0, x_842); +lean_ctor_set(x_843, 1, x_839); +return x_843; +} +default: +{ +lean_object* x_844; lean_object* x_845; +x_844 = lean_ctor_get(x_831, 1); lean_inc(x_844); -x_845 = lean_unbox(x_844); -lean_dec(x_844); -switch (x_845) { -case 0: +lean_dec(x_831); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_845 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_844); +if (lean_obj_tag(x_845) == 0) { -lean_object* x_846; lean_object* x_847; uint8_t x_848; lean_object* x_849; lean_object* x_850; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_846 = lean_ctor_get(x_843, 1); +lean_object* x_846; uint8_t x_847; +x_846 = lean_ctor_get(x_845, 0); lean_inc(x_846); -if (lean_is_exclusive(x_843)) { - lean_ctor_release(x_843, 0); - lean_ctor_release(x_843, 1); - x_847 = x_843; -} else { - lean_dec_ref(x_843); - x_847 = lean_box(0); -} -x_848 = 0; -x_849 = lean_box(x_848); -if (lean_is_scalar(x_847)) { - x_850 = lean_alloc_ctor(0, 2, 0); -} else { - x_850 = x_847; -} -lean_ctor_set(x_850, 0, x_849); -lean_ctor_set(x_850, 1, x_846); -return x_850; -} -case 1: +x_847 = lean_unbox(x_846); +lean_dec(x_846); +switch (x_847) { +case 0: { -lean_object* x_851; lean_object* x_852; uint8_t x_853; lean_object* x_854; lean_object* x_855; +lean_object* x_848; lean_object* x_849; uint8_t x_850; lean_object* x_851; lean_object* x_852; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_851 = lean_ctor_get(x_843, 1); -lean_inc(x_851); -if (lean_is_exclusive(x_843)) { - lean_ctor_release(x_843, 0); - lean_ctor_release(x_843, 1); - x_852 = x_843; +x_848 = lean_ctor_get(x_845, 1); +lean_inc(x_848); +if (lean_is_exclusive(x_845)) { + lean_ctor_release(x_845, 0); + lean_ctor_release(x_845, 1); + x_849 = x_845; } else { - lean_dec_ref(x_843); - x_852 = lean_box(0); + lean_dec_ref(x_845); + x_849 = lean_box(0); } -x_853 = 1; -x_854 = lean_box(x_853); -if (lean_is_scalar(x_852)) { - x_855 = lean_alloc_ctor(0, 2, 0); +x_850 = 0; +x_851 = lean_box(x_850); +if (lean_is_scalar(x_849)) { + x_852 = lean_alloc_ctor(0, 2, 0); } else { - x_855 = x_852; + x_852 = x_849; } -lean_ctor_set(x_855, 0, x_854); -lean_ctor_set(x_855, 1, x_851); -return x_855; +lean_ctor_set(x_852, 0, x_851); +lean_ctor_set(x_852, 1, x_848); +return x_852; +} +case 1: +{ +lean_object* x_853; lean_object* x_854; uint8_t x_855; lean_object* x_856; lean_object* x_857; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_853 = lean_ctor_get(x_845, 1); +lean_inc(x_853); +if (lean_is_exclusive(x_845)) { + lean_ctor_release(x_845, 0); + lean_ctor_release(x_845, 1); + x_854 = x_845; +} else { + lean_dec_ref(x_845); + x_854 = lean_box(0); +} +x_855 = 1; +x_856 = lean_box(x_855); +if (lean_is_scalar(x_854)) { + x_857 = lean_alloc_ctor(0, 2, 0); +} else { + x_857 = x_854; +} +lean_ctor_set(x_857, 0, x_856); +lean_ctor_set(x_857, 1, x_853); +return x_857; } default: { -lean_object* x_856; lean_object* x_857; -x_856 = lean_ctor_get(x_843, 1); -lean_inc(x_856); -lean_dec(x_843); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_857 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_856); -if (lean_obj_tag(x_857) == 0) -{ -lean_object* x_858; uint8_t x_859; -x_858 = lean_ctor_get(x_857, 0); +lean_object* x_858; lean_object* x_859; +x_858 = lean_ctor_get(x_845, 1); lean_inc(x_858); -x_859 = lean_unbox(x_858); -lean_dec(x_858); -switch (x_859) { -case 0: +lean_dec(x_845); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_859 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_858); +if (lean_obj_tag(x_859) == 0) { -lean_object* x_860; lean_object* x_861; uint8_t x_862; lean_object* x_863; lean_object* x_864; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_860 = lean_ctor_get(x_857, 1); +lean_object* x_860; uint8_t x_861; +x_860 = lean_ctor_get(x_859, 0); lean_inc(x_860); -if (lean_is_exclusive(x_857)) { - lean_ctor_release(x_857, 0); - lean_ctor_release(x_857, 1); - x_861 = x_857; -} else { - lean_dec_ref(x_857); - x_861 = lean_box(0); -} -x_862 = 0; -x_863 = lean_box(x_862); -if (lean_is_scalar(x_861)) { - x_864 = lean_alloc_ctor(0, 2, 0); -} else { - x_864 = x_861; -} -lean_ctor_set(x_864, 0, x_863); -lean_ctor_set(x_864, 1, x_860); -return x_864; -} -case 1: +x_861 = lean_unbox(x_860); +lean_dec(x_860); +switch (x_861) { +case 0: { -lean_object* x_865; lean_object* x_866; uint8_t x_867; lean_object* x_868; lean_object* x_869; +lean_object* x_862; lean_object* x_863; uint8_t x_864; lean_object* x_865; lean_object* x_866; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_865 = lean_ctor_get(x_857, 1); -lean_inc(x_865); -if (lean_is_exclusive(x_857)) { - lean_ctor_release(x_857, 0); - lean_ctor_release(x_857, 1); - x_866 = x_857; +x_862 = lean_ctor_get(x_859, 1); +lean_inc(x_862); +if (lean_is_exclusive(x_859)) { + lean_ctor_release(x_859, 0); + lean_ctor_release(x_859, 1); + x_863 = x_859; } else { - lean_dec_ref(x_857); - x_866 = lean_box(0); + lean_dec_ref(x_859); + x_863 = lean_box(0); } -x_867 = 1; -x_868 = lean_box(x_867); -if (lean_is_scalar(x_866)) { - x_869 = lean_alloc_ctor(0, 2, 0); +x_864 = 0; +x_865 = lean_box(x_864); +if (lean_is_scalar(x_863)) { + x_866 = lean_alloc_ctor(0, 2, 0); } else { - x_869 = x_866; + x_866 = x_863; } -lean_ctor_set(x_869, 0, x_868); -lean_ctor_set(x_869, 1, x_865); -return x_869; +lean_ctor_set(x_866, 0, x_865); +lean_ctor_set(x_866, 1, x_862); +return x_866; +} +case 1: +{ +lean_object* x_867; lean_object* x_868; uint8_t x_869; lean_object* x_870; lean_object* x_871; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_867 = lean_ctor_get(x_859, 1); +lean_inc(x_867); +if (lean_is_exclusive(x_859)) { + lean_ctor_release(x_859, 0); + lean_ctor_release(x_859, 1); + x_868 = x_859; +} else { + lean_dec_ref(x_859); + x_868 = lean_box(0); +} +x_869 = 1; +x_870 = lean_box(x_869); +if (lean_is_scalar(x_868)) { + x_871 = lean_alloc_ctor(0, 2, 0); +} else { + x_871 = x_868; +} +lean_ctor_set(x_871, 0, x_870); +lean_ctor_set(x_871, 1, x_867); +return x_871; } default: { -lean_object* x_870; lean_object* x_871; -x_870 = lean_ctor_get(x_857, 1); -lean_inc(x_870); -lean_dec(x_857); -x_871 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_870); -if (lean_obj_tag(x_871) == 0) -{ -lean_object* x_872; -x_872 = lean_ctor_get(x_871, 0); +lean_object* x_872; lean_object* x_873; +x_872 = lean_ctor_get(x_859, 1); lean_inc(x_872); -if (lean_obj_tag(x_872) == 1) +lean_dec(x_859); +x_873 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_872); +if (lean_obj_tag(x_873) == 0) { -lean_object* x_873; lean_object* x_874; uint8_t x_875; lean_object* x_876; lean_object* x_877; -x_873 = lean_ctor_get(x_871, 1); -lean_inc(x_873); -if (lean_is_exclusive(x_871)) { - lean_ctor_release(x_871, 0); - lean_ctor_release(x_871, 1); - x_874 = x_871; +lean_object* x_874; +x_874 = lean_ctor_get(x_873, 0); +lean_inc(x_874); +if (lean_obj_tag(x_874) == 1) +{ +lean_object* x_875; lean_object* x_876; uint8_t x_877; lean_object* x_878; lean_object* x_879; +x_875 = lean_ctor_get(x_873, 1); +lean_inc(x_875); +if (lean_is_exclusive(x_873)) { + lean_ctor_release(x_873, 0); + lean_ctor_release(x_873, 1); + x_876 = x_873; } else { - lean_dec_ref(x_871); - x_874 = lean_box(0); + lean_dec_ref(x_873); + x_876 = lean_box(0); } -x_875 = 1; -x_876 = lean_box(x_875); -if (lean_is_scalar(x_874)) { - x_877 = lean_alloc_ctor(0, 2, 0); +x_877 = 1; +x_878 = lean_box(x_877); +if (lean_is_scalar(x_876)) { + x_879 = lean_alloc_ctor(0, 2, 0); } else { - x_877 = x_874; + x_879 = x_876; } -lean_ctor_set(x_877, 0, x_876); -lean_ctor_set(x_877, 1, x_873); -return x_877; +lean_ctor_set(x_879, 0, x_878); +lean_ctor_set(x_879, 1, x_875); +return x_879; } else { -lean_object* x_878; lean_object* x_879; uint8_t x_880; lean_object* x_881; lean_object* x_882; -lean_dec(x_872); -x_878 = lean_ctor_get(x_871, 1); -lean_inc(x_878); -if (lean_is_exclusive(x_871)) { - lean_ctor_release(x_871, 0); - lean_ctor_release(x_871, 1); - x_879 = x_871; +lean_object* x_880; lean_object* x_881; uint8_t x_882; lean_object* x_883; lean_object* x_884; +lean_dec(x_874); +x_880 = lean_ctor_get(x_873, 1); +lean_inc(x_880); +if (lean_is_exclusive(x_873)) { + lean_ctor_release(x_873, 0); + lean_ctor_release(x_873, 1); + x_881 = x_873; } else { - lean_dec_ref(x_871); - x_879 = lean_box(0); + lean_dec_ref(x_873); + x_881 = lean_box(0); } -x_880 = 0; -x_881 = lean_box(x_880); -if (lean_is_scalar(x_879)) { - x_882 = lean_alloc_ctor(0, 2, 0); +x_882 = 0; +x_883 = lean_box(x_882); +if (lean_is_scalar(x_881)) { + x_884 = lean_alloc_ctor(0, 2, 0); } else { - x_882 = x_879; + x_884 = x_881; } -lean_ctor_set(x_882, 0, x_881); -lean_ctor_set(x_882, 1, x_878); -return x_882; +lean_ctor_set(x_884, 0, x_883); +lean_ctor_set(x_884, 1, x_880); +return x_884; } } else { -lean_object* x_883; lean_object* x_884; lean_object* x_885; lean_object* x_886; -x_883 = lean_ctor_get(x_871, 0); -lean_inc(x_883); -x_884 = lean_ctor_get(x_871, 1); -lean_inc(x_884); -if (lean_is_exclusive(x_871)) { - lean_ctor_release(x_871, 0); - lean_ctor_release(x_871, 1); - x_885 = x_871; +lean_object* x_885; lean_object* x_886; lean_object* x_887; lean_object* x_888; +x_885 = lean_ctor_get(x_873, 0); +lean_inc(x_885); +x_886 = lean_ctor_get(x_873, 1); +lean_inc(x_886); +if (lean_is_exclusive(x_873)) { + lean_ctor_release(x_873, 0); + lean_ctor_release(x_873, 1); + x_887 = x_873; } else { - lean_dec_ref(x_871); - x_885 = lean_box(0); + lean_dec_ref(x_873); + x_887 = lean_box(0); } -if (lean_is_scalar(x_885)) { - x_886 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_887)) { + x_888 = lean_alloc_ctor(1, 2, 0); } else { - x_886 = x_885; + x_888 = x_887; } -lean_ctor_set(x_886, 0, x_883); -lean_ctor_set(x_886, 1, x_884); -return x_886; +lean_ctor_set(x_888, 0, x_885); +lean_ctor_set(x_888, 1, x_886); +return x_888; } } } } else { -lean_object* x_887; lean_object* x_888; lean_object* x_889; lean_object* x_890; +lean_object* x_889; lean_object* x_890; lean_object* x_891; lean_object* x_892; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_887 = lean_ctor_get(x_857, 0); -lean_inc(x_887); -x_888 = lean_ctor_get(x_857, 1); -lean_inc(x_888); -if (lean_is_exclusive(x_857)) { - lean_ctor_release(x_857, 0); - lean_ctor_release(x_857, 1); - x_889 = x_857; +x_889 = lean_ctor_get(x_859, 0); +lean_inc(x_889); +x_890 = lean_ctor_get(x_859, 1); +lean_inc(x_890); +if (lean_is_exclusive(x_859)) { + lean_ctor_release(x_859, 0); + lean_ctor_release(x_859, 1); + x_891 = x_859; } else { - lean_dec_ref(x_857); - x_889 = lean_box(0); + lean_dec_ref(x_859); + x_891 = lean_box(0); } -if (lean_is_scalar(x_889)) { - x_890 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_891)) { + x_892 = lean_alloc_ctor(1, 2, 0); } else { - x_890 = x_889; + x_892 = x_891; } -lean_ctor_set(x_890, 0, x_887); -lean_ctor_set(x_890, 1, x_888); -return x_890; +lean_ctor_set(x_892, 0, x_889); +lean_ctor_set(x_892, 1, x_890); +return x_892; } } } } else { -lean_object* x_891; lean_object* x_892; lean_object* x_893; lean_object* x_894; +lean_object* x_893; lean_object* x_894; lean_object* x_895; lean_object* x_896; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_891 = lean_ctor_get(x_843, 0); -lean_inc(x_891); -x_892 = lean_ctor_get(x_843, 1); -lean_inc(x_892); -if (lean_is_exclusive(x_843)) { - lean_ctor_release(x_843, 0); - lean_ctor_release(x_843, 1); - x_893 = x_843; +x_893 = lean_ctor_get(x_845, 0); +lean_inc(x_893); +x_894 = lean_ctor_get(x_845, 1); +lean_inc(x_894); +if (lean_is_exclusive(x_845)) { + lean_ctor_release(x_845, 0); + lean_ctor_release(x_845, 1); + x_895 = x_845; } else { - lean_dec_ref(x_843); - x_893 = lean_box(0); + lean_dec_ref(x_845); + x_895 = lean_box(0); } -if (lean_is_scalar(x_893)) { - x_894 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_895)) { + x_896 = lean_alloc_ctor(1, 2, 0); } else { - x_894 = x_893; + x_896 = x_895; } -lean_ctor_set(x_894, 0, x_891); -lean_ctor_set(x_894, 1, x_892); -return x_894; +lean_ctor_set(x_896, 0, x_893); +lean_ctor_set(x_896, 1, x_894); +return x_896; } } } } else { -lean_object* x_895; lean_object* x_896; lean_object* x_897; lean_object* x_898; +lean_object* x_897; lean_object* x_898; lean_object* x_899; lean_object* x_900; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_895 = lean_ctor_get(x_829, 0); -lean_inc(x_895); -x_896 = lean_ctor_get(x_829, 1); -lean_inc(x_896); -if (lean_is_exclusive(x_829)) { - lean_ctor_release(x_829, 0); - lean_ctor_release(x_829, 1); - x_897 = x_829; +x_897 = lean_ctor_get(x_831, 0); +lean_inc(x_897); +x_898 = lean_ctor_get(x_831, 1); +lean_inc(x_898); +if (lean_is_exclusive(x_831)) { + lean_ctor_release(x_831, 0); + lean_ctor_release(x_831, 1); + x_899 = x_831; } else { - lean_dec_ref(x_829); - x_897 = lean_box(0); + lean_dec_ref(x_831); + x_899 = lean_box(0); } -if (lean_is_scalar(x_897)) { - x_898 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_899)) { + x_900 = lean_alloc_ctor(1, 2, 0); } else { - x_898 = x_897; + x_900 = x_899; } -lean_ctor_set(x_898, 0, x_895); -lean_ctor_set(x_898, 1, x_896); -return x_898; +lean_ctor_set(x_900, 0, x_897); +lean_ctor_set(x_900, 1, x_898); +return x_900; } } else { -lean_object* x_899; lean_object* x_900; lean_object* x_901; +lean_object* x_901; lean_object* x_902; lean_object* x_903; lean_inc(x_1); -x_899 = l_Lean_Expr_constLevels_x21(x_1); +x_901 = l_Lean_Expr_constLevels_x21(x_1); lean_inc(x_2); -x_900 = l_Lean_Expr_constLevels_x21(x_2); +x_902 = l_Lean_Expr_constLevels_x21(x_2); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_901 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_561); -if (lean_obj_tag(x_901) == 0) +x_903 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_563); +if (lean_obj_tag(x_903) == 0) { -lean_object* x_902; uint8_t x_903; -x_902 = lean_ctor_get(x_901, 0); -lean_inc(x_902); -x_903 = lean_unbox(x_902); -lean_dec(x_902); -switch (x_903) { -case 0: -{ -lean_object* x_904; lean_object* x_905; uint8_t x_906; lean_object* x_907; lean_object* x_908; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_904 = lean_ctor_get(x_901, 1); +lean_object* x_904; uint8_t x_905; +x_904 = lean_ctor_get(x_903, 0); lean_inc(x_904); -if (lean_is_exclusive(x_901)) { - lean_ctor_release(x_901, 0); - lean_ctor_release(x_901, 1); - x_905 = x_901; -} else { - lean_dec_ref(x_901); - x_905 = lean_box(0); -} -x_906 = 0; -x_907 = lean_box(x_906); -if (lean_is_scalar(x_905)) { - x_908 = lean_alloc_ctor(0, 2, 0); -} else { - x_908 = x_905; -} -lean_ctor_set(x_908, 0, x_907); -lean_ctor_set(x_908, 1, x_904); -return x_908; -} -case 1: +x_905 = lean_unbox(x_904); +lean_dec(x_904); +switch (x_905) { +case 0: { -lean_object* x_909; lean_object* x_910; uint8_t x_911; lean_object* x_912; lean_object* x_913; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_909 = lean_ctor_get(x_901, 1); -lean_inc(x_909); -if (lean_is_exclusive(x_901)) { - lean_ctor_release(x_901, 0); - lean_ctor_release(x_901, 1); - x_910 = x_901; -} else { - lean_dec_ref(x_901); - x_910 = lean_box(0); -} -x_911 = 1; -x_912 = lean_box(x_911); -if (lean_is_scalar(x_910)) { - x_913 = lean_alloc_ctor(0, 2, 0); -} else { - x_913 = x_910; -} -lean_ctor_set(x_913, 0, x_912); -lean_ctor_set(x_913, 1, x_909); -return x_913; -} -default: -{ -lean_object* x_914; lean_object* x_915; -x_914 = lean_ctor_get(x_901, 1); -lean_inc(x_914); +lean_object* x_906; lean_object* x_907; uint8_t x_908; lean_object* x_909; lean_object* x_910; +lean_dec(x_902); lean_dec(x_901); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_915 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_914); -if (lean_obj_tag(x_915) == 0) +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_906 = lean_ctor_get(x_903, 1); +lean_inc(x_906); +if (lean_is_exclusive(x_903)) { + lean_ctor_release(x_903, 0); + lean_ctor_release(x_903, 1); + x_907 = x_903; +} else { + lean_dec_ref(x_903); + x_907 = lean_box(0); +} +x_908 = 0; +x_909 = lean_box(x_908); +if (lean_is_scalar(x_907)) { + x_910 = lean_alloc_ctor(0, 2, 0); +} else { + x_910 = x_907; +} +lean_ctor_set(x_910, 0, x_909); +lean_ctor_set(x_910, 1, x_906); +return x_910; +} +case 1: { -lean_object* x_916; uint8_t x_917; -x_916 = lean_ctor_get(x_915, 0); +lean_object* x_911; lean_object* x_912; uint8_t x_913; lean_object* x_914; lean_object* x_915; +lean_dec(x_902); +lean_dec(x_901); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_911 = lean_ctor_get(x_903, 1); +lean_inc(x_911); +if (lean_is_exclusive(x_903)) { + lean_ctor_release(x_903, 0); + lean_ctor_release(x_903, 1); + x_912 = x_903; +} else { + lean_dec_ref(x_903); + x_912 = lean_box(0); +} +x_913 = 1; +x_914 = lean_box(x_913); +if (lean_is_scalar(x_912)) { + x_915 = lean_alloc_ctor(0, 2, 0); +} else { + x_915 = x_912; +} +lean_ctor_set(x_915, 0, x_914); +lean_ctor_set(x_915, 1, x_911); +return x_915; +} +default: +{ +lean_object* x_916; lean_object* x_917; +x_916 = lean_ctor_get(x_903, 1); lean_inc(x_916); -x_917 = lean_unbox(x_916); -lean_dec(x_916); -switch (x_917) { -case 0: -{ -lean_object* x_918; lean_object* x_919; uint8_t x_920; lean_object* x_921; lean_object* x_922; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_918 = lean_ctor_get(x_915, 1); -lean_inc(x_918); -if (lean_is_exclusive(x_915)) { - lean_ctor_release(x_915, 0); - lean_ctor_release(x_915, 1); - x_919 = x_915; -} else { - lean_dec_ref(x_915); - x_919 = lean_box(0); -} -x_920 = 0; -x_921 = lean_box(x_920); -if (lean_is_scalar(x_919)) { - x_922 = lean_alloc_ctor(0, 2, 0); -} else { - x_922 = x_919; -} -lean_ctor_set(x_922, 0, x_921); -lean_ctor_set(x_922, 1, x_918); -return x_922; -} -case 1: -{ -lean_object* x_923; lean_object* x_924; uint8_t x_925; lean_object* x_926; lean_object* x_927; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_923 = lean_ctor_get(x_915, 1); -lean_inc(x_923); -if (lean_is_exclusive(x_915)) { - lean_ctor_release(x_915, 0); - lean_ctor_release(x_915, 1); - x_924 = x_915; -} else { - lean_dec_ref(x_915); - x_924 = lean_box(0); -} -x_925 = 1; -x_926 = lean_box(x_925); -if (lean_is_scalar(x_924)) { - x_927 = lean_alloc_ctor(0, 2, 0); -} else { - x_927 = x_924; -} -lean_ctor_set(x_927, 0, x_926); -lean_ctor_set(x_927, 1, x_923); -return x_927; -} -default: -{ -lean_object* x_928; lean_object* x_929; -x_928 = lean_ctor_get(x_915, 1); -lean_inc(x_928); -lean_dec(x_915); +lean_dec(x_903); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_929 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_928); -if (lean_obj_tag(x_929) == 0) +x_917 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_916); +if (lean_obj_tag(x_917) == 0) { -lean_object* x_930; uint8_t x_931; -x_930 = lean_ctor_get(x_929, 0); -lean_inc(x_930); -x_931 = lean_unbox(x_930); -lean_dec(x_930); -switch (x_931) { +lean_object* x_918; uint8_t x_919; +x_918 = lean_ctor_get(x_917, 0); +lean_inc(x_918); +x_919 = lean_unbox(x_918); +lean_dec(x_918); +switch (x_919) { case 0: { -lean_object* x_932; lean_object* x_933; uint8_t x_934; lean_object* x_935; lean_object* x_936; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_920; lean_object* x_921; uint8_t x_922; lean_object* x_923; lean_object* x_924; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_932 = lean_ctor_get(x_929, 1); -lean_inc(x_932); -if (lean_is_exclusive(x_929)) { - lean_ctor_release(x_929, 0); - lean_ctor_release(x_929, 1); - x_933 = x_929; +x_920 = lean_ctor_get(x_917, 1); +lean_inc(x_920); +if (lean_is_exclusive(x_917)) { + lean_ctor_release(x_917, 0); + lean_ctor_release(x_917, 1); + x_921 = x_917; } else { - lean_dec_ref(x_929); - x_933 = lean_box(0); + lean_dec_ref(x_917); + x_921 = lean_box(0); } -x_934 = 0; -x_935 = lean_box(x_934); -if (lean_is_scalar(x_933)) { - x_936 = lean_alloc_ctor(0, 2, 0); +x_922 = 0; +x_923 = lean_box(x_922); +if (lean_is_scalar(x_921)) { + x_924 = lean_alloc_ctor(0, 2, 0); } else { - x_936 = x_933; + x_924 = x_921; } -lean_ctor_set(x_936, 0, x_935); -lean_ctor_set(x_936, 1, x_932); -return x_936; +lean_ctor_set(x_924, 0, x_923); +lean_ctor_set(x_924, 1, x_920); +return x_924; } case 1: { -lean_object* x_937; lean_object* x_938; uint8_t x_939; lean_object* x_940; lean_object* x_941; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_925; lean_object* x_926; uint8_t x_927; lean_object* x_928; lean_object* x_929; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_937 = lean_ctor_get(x_929, 1); -lean_inc(x_937); -if (lean_is_exclusive(x_929)) { - lean_ctor_release(x_929, 0); - lean_ctor_release(x_929, 1); - x_938 = x_929; +x_925 = lean_ctor_get(x_917, 1); +lean_inc(x_925); +if (lean_is_exclusive(x_917)) { + lean_ctor_release(x_917, 0); + lean_ctor_release(x_917, 1); + x_926 = x_917; } else { - lean_dec_ref(x_929); - x_938 = lean_box(0); + lean_dec_ref(x_917); + x_926 = lean_box(0); } -x_939 = 1; -x_940 = lean_box(x_939); -if (lean_is_scalar(x_938)) { - x_941 = lean_alloc_ctor(0, 2, 0); +x_927 = 1; +x_928 = lean_box(x_927); +if (lean_is_scalar(x_926)) { + x_929 = lean_alloc_ctor(0, 2, 0); } else { - x_941 = x_938; + x_929 = x_926; } -lean_ctor_set(x_941, 0, x_940); -lean_ctor_set(x_941, 1, x_937); -return x_941; +lean_ctor_set(x_929, 0, x_928); +lean_ctor_set(x_929, 1, x_925); +return x_929; } default: { -lean_object* x_942; lean_object* x_943; -x_942 = lean_ctor_get(x_929, 1); -lean_inc(x_942); -lean_dec(x_929); +lean_object* x_930; lean_object* x_931; +x_930 = lean_ctor_get(x_917, 1); +lean_inc(x_930); +lean_dec(x_917); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_943 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_942); -if (lean_obj_tag(x_943) == 0) +lean_inc(x_2); +lean_inc(x_1); +x_931 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_930); +if (lean_obj_tag(x_931) == 0) { -lean_object* x_944; uint8_t x_945; -x_944 = lean_ctor_get(x_943, 0); -lean_inc(x_944); -x_945 = lean_unbox(x_944); -lean_dec(x_944); -switch (x_945) { +lean_object* x_932; uint8_t x_933; +x_932 = lean_ctor_get(x_931, 0); +lean_inc(x_932); +x_933 = lean_unbox(x_932); +lean_dec(x_932); +switch (x_933) { case 0: { -lean_object* x_946; lean_object* x_947; uint8_t x_948; lean_object* x_949; lean_object* x_950; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_934; lean_object* x_935; uint8_t x_936; lean_object* x_937; lean_object* x_938; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_946 = lean_ctor_get(x_943, 1); -lean_inc(x_946); -if (lean_is_exclusive(x_943)) { - lean_ctor_release(x_943, 0); - lean_ctor_release(x_943, 1); - x_947 = x_943; +lean_dec(x_2); +lean_dec(x_1); +x_934 = lean_ctor_get(x_931, 1); +lean_inc(x_934); +if (lean_is_exclusive(x_931)) { + lean_ctor_release(x_931, 0); + lean_ctor_release(x_931, 1); + x_935 = x_931; } else { - lean_dec_ref(x_943); - x_947 = lean_box(0); + lean_dec_ref(x_931); + x_935 = lean_box(0); } -x_948 = 0; -x_949 = lean_box(x_948); -if (lean_is_scalar(x_947)) { - x_950 = lean_alloc_ctor(0, 2, 0); +x_936 = 0; +x_937 = lean_box(x_936); +if (lean_is_scalar(x_935)) { + x_938 = lean_alloc_ctor(0, 2, 0); } else { - x_950 = x_947; + x_938 = x_935; } -lean_ctor_set(x_950, 0, x_949); -lean_ctor_set(x_950, 1, x_946); -return x_950; +lean_ctor_set(x_938, 0, x_937); +lean_ctor_set(x_938, 1, x_934); +return x_938; } case 1: { -lean_object* x_951; lean_object* x_952; uint8_t x_953; lean_object* x_954; lean_object* x_955; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_939; lean_object* x_940; uint8_t x_941; lean_object* x_942; lean_object* x_943; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_951 = lean_ctor_get(x_943, 1); -lean_inc(x_951); -if (lean_is_exclusive(x_943)) { - lean_ctor_release(x_943, 0); - lean_ctor_release(x_943, 1); - x_952 = x_943; +lean_dec(x_2); +lean_dec(x_1); +x_939 = lean_ctor_get(x_931, 1); +lean_inc(x_939); +if (lean_is_exclusive(x_931)) { + lean_ctor_release(x_931, 0); + lean_ctor_release(x_931, 1); + x_940 = x_931; } else { - lean_dec_ref(x_943); - x_952 = lean_box(0); + lean_dec_ref(x_931); + x_940 = lean_box(0); } -x_953 = 1; -x_954 = lean_box(x_953); -if (lean_is_scalar(x_952)) { - x_955 = lean_alloc_ctor(0, 2, 0); +x_941 = 1; +x_942 = lean_box(x_941); +if (lean_is_scalar(x_940)) { + x_943 = lean_alloc_ctor(0, 2, 0); } else { - x_955 = x_952; + x_943 = x_940; } -lean_ctor_set(x_955, 0, x_954); -lean_ctor_set(x_955, 1, x_951); -return x_955; +lean_ctor_set(x_943, 0, x_942); +lean_ctor_set(x_943, 1, x_939); +return x_943; } default: { -lean_object* x_956; lean_object* x_957; -x_956 = lean_ctor_get(x_943, 1); -lean_inc(x_956); -lean_dec(x_943); -x_957 = l_Lean_Meta_isListLevelDefEqAux(x_899, x_900, x_3, x_4, x_5, x_6, x_956); +lean_object* x_944; lean_object* x_945; +x_944 = lean_ctor_get(x_931, 1); +lean_inc(x_944); +lean_dec(x_931); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_945 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_944); +if (lean_obj_tag(x_945) == 0) +{ +lean_object* x_946; uint8_t x_947; +x_946 = lean_ctor_get(x_945, 0); +lean_inc(x_946); +x_947 = lean_unbox(x_946); +lean_dec(x_946); +switch (x_947) { +case 0: +{ +lean_object* x_948; lean_object* x_949; uint8_t x_950; lean_object* x_951; lean_object* x_952; +lean_dec(x_902); +lean_dec(x_901); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_948 = lean_ctor_get(x_945, 1); +lean_inc(x_948); +if (lean_is_exclusive(x_945)) { + lean_ctor_release(x_945, 0); + lean_ctor_release(x_945, 1); + x_949 = x_945; +} else { + lean_dec_ref(x_945); + x_949 = lean_box(0); +} +x_950 = 0; +x_951 = lean_box(x_950); +if (lean_is_scalar(x_949)) { + x_952 = lean_alloc_ctor(0, 2, 0); +} else { + x_952 = x_949; +} +lean_ctor_set(x_952, 0, x_951); +lean_ctor_set(x_952, 1, x_948); +return x_952; +} +case 1: +{ +lean_object* x_953; lean_object* x_954; uint8_t x_955; lean_object* x_956; lean_object* x_957; +lean_dec(x_902); +lean_dec(x_901); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_953 = lean_ctor_get(x_945, 1); +lean_inc(x_953); +if (lean_is_exclusive(x_945)) { + lean_ctor_release(x_945, 0); + lean_ctor_release(x_945, 1); + x_954 = x_945; +} else { + lean_dec_ref(x_945); + x_954 = lean_box(0); +} +x_955 = 1; +x_956 = lean_box(x_955); +if (lean_is_scalar(x_954)) { + x_957 = lean_alloc_ctor(0, 2, 0); +} else { + x_957 = x_954; +} +lean_ctor_set(x_957, 0, x_956); +lean_ctor_set(x_957, 1, x_953); return x_957; } -} -} -else +default: { -lean_object* x_958; lean_object* x_959; lean_object* x_960; lean_object* x_961; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_958 = lean_ctor_get(x_943, 0); +lean_object* x_958; lean_object* x_959; +x_958 = lean_ctor_get(x_945, 1); lean_inc(x_958); -x_959 = lean_ctor_get(x_943, 1); -lean_inc(x_959); -if (lean_is_exclusive(x_943)) { - lean_ctor_release(x_943, 0); - lean_ctor_release(x_943, 1); - x_960 = x_943; -} else { - lean_dec_ref(x_943); - x_960 = lean_box(0); +lean_dec(x_945); +x_959 = l_Lean_Meta_isListLevelDefEqAux(x_901, x_902, x_3, x_4, x_5, x_6, x_958); +return x_959; } -if (lean_is_scalar(x_960)) { - x_961 = lean_alloc_ctor(1, 2, 0); -} else { - x_961 = x_960; } -lean_ctor_set(x_961, 0, x_958); -lean_ctor_set(x_961, 1, x_959); -return x_961; +} +else +{ +lean_object* x_960; lean_object* x_961; lean_object* x_962; lean_object* x_963; +lean_dec(x_902); +lean_dec(x_901); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_960 = lean_ctor_get(x_945, 0); +lean_inc(x_960); +x_961 = lean_ctor_get(x_945, 1); +lean_inc(x_961); +if (lean_is_exclusive(x_945)) { + lean_ctor_release(x_945, 0); + lean_ctor_release(x_945, 1); + x_962 = x_945; +} else { + lean_dec_ref(x_945); + x_962 = lean_box(0); +} +if (lean_is_scalar(x_962)) { + x_963 = lean_alloc_ctor(1, 2, 0); +} else { + x_963 = x_962; +} +lean_ctor_set(x_963, 0, x_960); +lean_ctor_set(x_963, 1, x_961); +return x_963; } } } } else { -lean_object* x_962; lean_object* x_963; lean_object* x_964; lean_object* x_965; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_964; lean_object* x_965; lean_object* x_966; lean_object* x_967; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_962 = lean_ctor_get(x_929, 0); -lean_inc(x_962); -x_963 = lean_ctor_get(x_929, 1); -lean_inc(x_963); -if (lean_is_exclusive(x_929)) { - lean_ctor_release(x_929, 0); - lean_ctor_release(x_929, 1); - x_964 = x_929; +x_964 = lean_ctor_get(x_931, 0); +lean_inc(x_964); +x_965 = lean_ctor_get(x_931, 1); +lean_inc(x_965); +if (lean_is_exclusive(x_931)) { + lean_ctor_release(x_931, 0); + lean_ctor_release(x_931, 1); + x_966 = x_931; } else { - lean_dec_ref(x_929); - x_964 = lean_box(0); + lean_dec_ref(x_931); + x_966 = lean_box(0); } -if (lean_is_scalar(x_964)) { - x_965 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_966)) { + x_967 = lean_alloc_ctor(1, 2, 0); } else { - x_965 = x_964; + x_967 = x_966; } -lean_ctor_set(x_965, 0, x_962); -lean_ctor_set(x_965, 1, x_963); -return x_965; +lean_ctor_set(x_967, 0, x_964); +lean_ctor_set(x_967, 1, x_965); +return x_967; } } } } else { -lean_object* x_966; lean_object* x_967; lean_object* x_968; lean_object* x_969; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_968; lean_object* x_969; lean_object* x_970; lean_object* x_971; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_966 = lean_ctor_get(x_915, 0); -lean_inc(x_966); -x_967 = lean_ctor_get(x_915, 1); -lean_inc(x_967); -if (lean_is_exclusive(x_915)) { - lean_ctor_release(x_915, 0); - lean_ctor_release(x_915, 1); - x_968 = x_915; +x_968 = lean_ctor_get(x_917, 0); +lean_inc(x_968); +x_969 = lean_ctor_get(x_917, 1); +lean_inc(x_969); +if (lean_is_exclusive(x_917)) { + lean_ctor_release(x_917, 0); + lean_ctor_release(x_917, 1); + x_970 = x_917; } else { - lean_dec_ref(x_915); - x_968 = lean_box(0); + lean_dec_ref(x_917); + x_970 = lean_box(0); } -if (lean_is_scalar(x_968)) { - x_969 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_970)) { + x_971 = lean_alloc_ctor(1, 2, 0); } else { - x_969 = x_968; + x_971 = x_970; } -lean_ctor_set(x_969, 0, x_966); -lean_ctor_set(x_969, 1, x_967); -return x_969; +lean_ctor_set(x_971, 0, x_968); +lean_ctor_set(x_971, 1, x_969); +return x_971; } } } } else { -lean_object* x_970; lean_object* x_971; lean_object* x_972; lean_object* x_973; -lean_dec(x_900); -lean_dec(x_899); +lean_object* x_972; lean_object* x_973; lean_object* x_974; lean_object* x_975; +lean_dec(x_902); +lean_dec(x_901); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_970 = lean_ctor_get(x_901, 0); -lean_inc(x_970); -x_971 = lean_ctor_get(x_901, 1); -lean_inc(x_971); -if (lean_is_exclusive(x_901)) { - lean_ctor_release(x_901, 0); - lean_ctor_release(x_901, 1); - x_972 = x_901; +x_972 = lean_ctor_get(x_903, 0); +lean_inc(x_972); +x_973 = lean_ctor_get(x_903, 1); +lean_inc(x_973); +if (lean_is_exclusive(x_903)) { + lean_ctor_release(x_903, 0); + lean_ctor_release(x_903, 1); + x_974 = x_903; } else { - lean_dec_ref(x_901); - x_972 = lean_box(0); + lean_dec_ref(x_903); + x_974 = lean_box(0); } -if (lean_is_scalar(x_972)) { - x_973 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_974)) { + x_975 = lean_alloc_ctor(1, 2, 0); } else { - x_973 = x_972; + x_975 = x_974; } -lean_ctor_set(x_973, 0, x_970); -lean_ctor_set(x_973, 1, x_971); -return x_973; +lean_ctor_set(x_975, 0, x_972); +lean_ctor_set(x_975, 1, x_973); +return x_975; } } } @@ -57947,1691 +60807,1709 @@ return x_973; } else { -uint8_t x_974; lean_object* x_975; lean_object* x_976; +uint8_t x_976; lean_object* x_977; lean_object* x_978; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_974 = 1; -x_975 = lean_box(x_974); -x_976 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_976, 0, x_975); -lean_ctor_set(x_976, 1, x_561); -return x_976; +x_976 = 1; +x_977 = lean_box(x_976); +x_978 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_978, 0, x_977); +lean_ctor_set(x_978, 1, x_563); +return x_978; } -block_820: +block_822: { -uint8_t x_563; -lean_dec(x_562); -x_563 = l_Lean_Expr_isApp(x_1); -if (x_563 == 0) -{ -lean_object* x_564; -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_564 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_561); -if (lean_obj_tag(x_564) == 0) -{ -lean_object* x_565; uint8_t x_566; -x_565 = lean_ctor_get(x_564, 0); -lean_inc(x_565); -x_566 = lean_unbox(x_565); -lean_dec(x_565); -switch (x_566) { -case 0: -{ -lean_object* x_567; lean_object* x_568; uint8_t x_569; lean_object* x_570; lean_object* x_571; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_567 = lean_ctor_get(x_564, 1); -lean_inc(x_567); -if (lean_is_exclusive(x_564)) { - lean_ctor_release(x_564, 0); - lean_ctor_release(x_564, 1); - x_568 = x_564; -} else { - lean_dec_ref(x_564); - x_568 = lean_box(0); -} -x_569 = 0; -x_570 = lean_box(x_569); -if (lean_is_scalar(x_568)) { - x_571 = lean_alloc_ctor(0, 2, 0); -} else { - x_571 = x_568; -} -lean_ctor_set(x_571, 0, x_570); -lean_ctor_set(x_571, 1, x_567); -return x_571; -} -case 1: -{ -lean_object* x_572; lean_object* x_573; uint8_t x_574; lean_object* x_575; lean_object* x_576; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_572 = lean_ctor_get(x_564, 1); -lean_inc(x_572); -if (lean_is_exclusive(x_564)) { - lean_ctor_release(x_564, 0); - lean_ctor_release(x_564, 1); - x_573 = x_564; -} else { - lean_dec_ref(x_564); - x_573 = lean_box(0); -} -x_574 = 1; -x_575 = lean_box(x_574); -if (lean_is_scalar(x_573)) { - x_576 = lean_alloc_ctor(0, 2, 0); -} else { - x_576 = x_573; -} -lean_ctor_set(x_576, 0, x_575); -lean_ctor_set(x_576, 1, x_572); -return x_576; -} -default: -{ -lean_object* x_577; lean_object* x_578; -x_577 = lean_ctor_get(x_564, 1); -lean_inc(x_577); +uint8_t x_565; lean_dec(x_564); +x_565 = l_Lean_Expr_isApp(x_1); +if (x_565 == 0) +{ +lean_object* x_566; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_578 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_577); -if (lean_obj_tag(x_578) == 0) +x_566 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_563); +if (lean_obj_tag(x_566) == 0) { -lean_object* x_579; uint8_t x_580; -x_579 = lean_ctor_get(x_578, 0); +lean_object* x_567; uint8_t x_568; +x_567 = lean_ctor_get(x_566, 0); +lean_inc(x_567); +x_568 = lean_unbox(x_567); +lean_dec(x_567); +switch (x_568) { +case 0: +{ +lean_object* x_569; lean_object* x_570; uint8_t x_571; lean_object* x_572; lean_object* x_573; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_569 = lean_ctor_get(x_566, 1); +lean_inc(x_569); +if (lean_is_exclusive(x_566)) { + lean_ctor_release(x_566, 0); + lean_ctor_release(x_566, 1); + x_570 = x_566; +} else { + lean_dec_ref(x_566); + x_570 = lean_box(0); +} +x_571 = 0; +x_572 = lean_box(x_571); +if (lean_is_scalar(x_570)) { + x_573 = lean_alloc_ctor(0, 2, 0); +} else { + x_573 = x_570; +} +lean_ctor_set(x_573, 0, x_572); +lean_ctor_set(x_573, 1, x_569); +return x_573; +} +case 1: +{ +lean_object* x_574; lean_object* x_575; uint8_t x_576; lean_object* x_577; lean_object* x_578; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_574 = lean_ctor_get(x_566, 1); +lean_inc(x_574); +if (lean_is_exclusive(x_566)) { + lean_ctor_release(x_566, 0); + lean_ctor_release(x_566, 1); + x_575 = x_566; +} else { + lean_dec_ref(x_566); + x_575 = lean_box(0); +} +x_576 = 1; +x_577 = lean_box(x_576); +if (lean_is_scalar(x_575)) { + x_578 = lean_alloc_ctor(0, 2, 0); +} else { + x_578 = x_575; +} +lean_ctor_set(x_578, 0, x_577); +lean_ctor_set(x_578, 1, x_574); +return x_578; +} +default: +{ +lean_object* x_579; lean_object* x_580; +x_579 = lean_ctor_get(x_566, 1); lean_inc(x_579); -x_580 = lean_unbox(x_579); -lean_dec(x_579); -switch (x_580) { -case 0: +lean_dec(x_566); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_580 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_579); +if (lean_obj_tag(x_580) == 0) { -lean_object* x_581; lean_object* x_582; uint8_t x_583; lean_object* x_584; lean_object* x_585; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_581 = lean_ctor_get(x_578, 1); +lean_object* x_581; uint8_t x_582; +x_581 = lean_ctor_get(x_580, 0); lean_inc(x_581); -if (lean_is_exclusive(x_578)) { - lean_ctor_release(x_578, 0); - lean_ctor_release(x_578, 1); - x_582 = x_578; -} else { - lean_dec_ref(x_578); - x_582 = lean_box(0); -} -x_583 = 0; -x_584 = lean_box(x_583); -if (lean_is_scalar(x_582)) { - x_585 = lean_alloc_ctor(0, 2, 0); -} else { - x_585 = x_582; -} -lean_ctor_set(x_585, 0, x_584); -lean_ctor_set(x_585, 1, x_581); -return x_585; -} -case 1: +x_582 = lean_unbox(x_581); +lean_dec(x_581); +switch (x_582) { +case 0: { -lean_object* x_586; lean_object* x_587; uint8_t x_588; lean_object* x_589; lean_object* x_590; +lean_object* x_583; lean_object* x_584; uint8_t x_585; lean_object* x_586; lean_object* x_587; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_586 = lean_ctor_get(x_578, 1); -lean_inc(x_586); -if (lean_is_exclusive(x_578)) { - lean_ctor_release(x_578, 0); - lean_ctor_release(x_578, 1); - x_587 = x_578; +x_583 = lean_ctor_get(x_580, 1); +lean_inc(x_583); +if (lean_is_exclusive(x_580)) { + lean_ctor_release(x_580, 0); + lean_ctor_release(x_580, 1); + x_584 = x_580; } else { - lean_dec_ref(x_578); - x_587 = lean_box(0); + lean_dec_ref(x_580); + x_584 = lean_box(0); } -x_588 = 1; -x_589 = lean_box(x_588); -if (lean_is_scalar(x_587)) { - x_590 = lean_alloc_ctor(0, 2, 0); +x_585 = 0; +x_586 = lean_box(x_585); +if (lean_is_scalar(x_584)) { + x_587 = lean_alloc_ctor(0, 2, 0); } else { - x_590 = x_587; + x_587 = x_584; } -lean_ctor_set(x_590, 0, x_589); -lean_ctor_set(x_590, 1, x_586); -return x_590; +lean_ctor_set(x_587, 0, x_586); +lean_ctor_set(x_587, 1, x_583); +return x_587; +} +case 1: +{ +lean_object* x_588; lean_object* x_589; uint8_t x_590; lean_object* x_591; lean_object* x_592; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_588 = lean_ctor_get(x_580, 1); +lean_inc(x_588); +if (lean_is_exclusive(x_580)) { + lean_ctor_release(x_580, 0); + lean_ctor_release(x_580, 1); + x_589 = x_580; +} else { + lean_dec_ref(x_580); + x_589 = lean_box(0); +} +x_590 = 1; +x_591 = lean_box(x_590); +if (lean_is_scalar(x_589)) { + x_592 = lean_alloc_ctor(0, 2, 0); +} else { + x_592 = x_589; +} +lean_ctor_set(x_592, 0, x_591); +lean_ctor_set(x_592, 1, x_588); +return x_592; } default: { -lean_object* x_591; lean_object* x_592; -x_591 = lean_ctor_get(x_578, 1); -lean_inc(x_591); -lean_dec(x_578); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_592 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_591); -if (lean_obj_tag(x_592) == 0) -{ -lean_object* x_593; uint8_t x_594; -x_593 = lean_ctor_get(x_592, 0); +lean_object* x_593; lean_object* x_594; +x_593 = lean_ctor_get(x_580, 1); lean_inc(x_593); -x_594 = lean_unbox(x_593); -lean_dec(x_593); -switch (x_594) { -case 0: +lean_dec(x_580); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_594 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_593); +if (lean_obj_tag(x_594) == 0) { -lean_object* x_595; lean_object* x_596; uint8_t x_597; lean_object* x_598; lean_object* x_599; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_595 = lean_ctor_get(x_592, 1); +lean_object* x_595; uint8_t x_596; +x_595 = lean_ctor_get(x_594, 0); lean_inc(x_595); -if (lean_is_exclusive(x_592)) { - lean_ctor_release(x_592, 0); - lean_ctor_release(x_592, 1); - x_596 = x_592; -} else { - lean_dec_ref(x_592); - x_596 = lean_box(0); -} -x_597 = 0; -x_598 = lean_box(x_597); -if (lean_is_scalar(x_596)) { - x_599 = lean_alloc_ctor(0, 2, 0); -} else { - x_599 = x_596; -} -lean_ctor_set(x_599, 0, x_598); -lean_ctor_set(x_599, 1, x_595); -return x_599; -} -case 1: +x_596 = lean_unbox(x_595); +lean_dec(x_595); +switch (x_596) { +case 0: { -lean_object* x_600; lean_object* x_601; uint8_t x_602; lean_object* x_603; lean_object* x_604; +lean_object* x_597; lean_object* x_598; uint8_t x_599; lean_object* x_600; lean_object* x_601; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_600 = lean_ctor_get(x_592, 1); -lean_inc(x_600); -if (lean_is_exclusive(x_592)) { - lean_ctor_release(x_592, 0); - lean_ctor_release(x_592, 1); - x_601 = x_592; +x_597 = lean_ctor_get(x_594, 1); +lean_inc(x_597); +if (lean_is_exclusive(x_594)) { + lean_ctor_release(x_594, 0); + lean_ctor_release(x_594, 1); + x_598 = x_594; } else { - lean_dec_ref(x_592); - x_601 = lean_box(0); + lean_dec_ref(x_594); + x_598 = lean_box(0); } -x_602 = 1; -x_603 = lean_box(x_602); -if (lean_is_scalar(x_601)) { - x_604 = lean_alloc_ctor(0, 2, 0); +x_599 = 0; +x_600 = lean_box(x_599); +if (lean_is_scalar(x_598)) { + x_601 = lean_alloc_ctor(0, 2, 0); } else { - x_604 = x_601; + x_601 = x_598; } -lean_ctor_set(x_604, 0, x_603); -lean_ctor_set(x_604, 1, x_600); -return x_604; +lean_ctor_set(x_601, 0, x_600); +lean_ctor_set(x_601, 1, x_597); +return x_601; +} +case 1: +{ +lean_object* x_602; lean_object* x_603; uint8_t x_604; lean_object* x_605; lean_object* x_606; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_602 = lean_ctor_get(x_594, 1); +lean_inc(x_602); +if (lean_is_exclusive(x_594)) { + lean_ctor_release(x_594, 0); + lean_ctor_release(x_594, 1); + x_603 = x_594; +} else { + lean_dec_ref(x_594); + x_603 = lean_box(0); +} +x_604 = 1; +x_605 = lean_box(x_604); +if (lean_is_scalar(x_603)) { + x_606 = lean_alloc_ctor(0, 2, 0); +} else { + x_606 = x_603; +} +lean_ctor_set(x_606, 0, x_605); +lean_ctor_set(x_606, 1, x_602); +return x_606; } default: { -lean_object* x_605; lean_object* x_606; -x_605 = lean_ctor_get(x_592, 1); -lean_inc(x_605); -lean_dec(x_592); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_606 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_605); -if (lean_obj_tag(x_606) == 0) -{ -lean_object* x_607; uint8_t x_608; -x_607 = lean_ctor_get(x_606, 0); +lean_object* x_607; lean_object* x_608; +x_607 = lean_ctor_get(x_594, 1); lean_inc(x_607); -x_608 = lean_unbox(x_607); -lean_dec(x_607); -switch (x_608) { -case 0: -{ -lean_object* x_609; lean_object* x_610; uint8_t x_611; lean_object* x_612; lean_object* x_613; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_609 = lean_ctor_get(x_606, 1); -lean_inc(x_609); -if (lean_is_exclusive(x_606)) { - lean_ctor_release(x_606, 0); - lean_ctor_release(x_606, 1); - x_610 = x_606; -} else { - lean_dec_ref(x_606); - x_610 = lean_box(0); -} -x_611 = 0; -x_612 = lean_box(x_611); -if (lean_is_scalar(x_610)) { - x_613 = lean_alloc_ctor(0, 2, 0); -} else { - x_613 = x_610; -} -lean_ctor_set(x_613, 0, x_612); -lean_ctor_set(x_613, 1, x_609); -return x_613; -} -case 1: -{ -lean_object* x_614; lean_object* x_615; uint8_t x_616; lean_object* x_617; lean_object* x_618; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_614 = lean_ctor_get(x_606, 1); -lean_inc(x_614); -if (lean_is_exclusive(x_606)) { - lean_ctor_release(x_606, 0); - lean_ctor_release(x_606, 1); - x_615 = x_606; -} else { - lean_dec_ref(x_606); - x_615 = lean_box(0); -} -x_616 = 1; -x_617 = lean_box(x_616); -if (lean_is_scalar(x_615)) { - x_618 = lean_alloc_ctor(0, 2, 0); -} else { - x_618 = x_615; -} -lean_ctor_set(x_618, 0, x_617); -lean_ctor_set(x_618, 1, x_614); -return x_618; -} -default: -{ -lean_object* x_619; lean_object* x_620; -x_619 = lean_ctor_get(x_606, 1); -lean_inc(x_619); -lean_dec(x_606); +lean_dec(x_594); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_620 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_619); -if (lean_obj_tag(x_620) == 0) +x_608 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_607); +if (lean_obj_tag(x_608) == 0) { -lean_object* x_621; uint8_t x_622; -x_621 = lean_ctor_get(x_620, 0); -lean_inc(x_621); -x_622 = lean_unbox(x_621); -lean_dec(x_621); -switch (x_622) { +lean_object* x_609; uint8_t x_610; +x_609 = lean_ctor_get(x_608, 0); +lean_inc(x_609); +x_610 = lean_unbox(x_609); +lean_dec(x_609); +switch (x_610) { case 0: { -lean_object* x_623; lean_object* x_624; uint8_t x_625; lean_object* x_626; lean_object* x_627; +lean_object* x_611; lean_object* x_612; uint8_t x_613; lean_object* x_614; lean_object* x_615; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_623 = lean_ctor_get(x_620, 1); -lean_inc(x_623); -if (lean_is_exclusive(x_620)) { - lean_ctor_release(x_620, 0); - lean_ctor_release(x_620, 1); - x_624 = x_620; +x_611 = lean_ctor_get(x_608, 1); +lean_inc(x_611); +if (lean_is_exclusive(x_608)) { + lean_ctor_release(x_608, 0); + lean_ctor_release(x_608, 1); + x_612 = x_608; } else { - lean_dec_ref(x_620); - x_624 = lean_box(0); + lean_dec_ref(x_608); + x_612 = lean_box(0); } -x_625 = 0; -x_626 = lean_box(x_625); -if (lean_is_scalar(x_624)) { - x_627 = lean_alloc_ctor(0, 2, 0); +x_613 = 0; +x_614 = lean_box(x_613); +if (lean_is_scalar(x_612)) { + x_615 = lean_alloc_ctor(0, 2, 0); } else { - x_627 = x_624; + x_615 = x_612; } -lean_ctor_set(x_627, 0, x_626); -lean_ctor_set(x_627, 1, x_623); -return x_627; +lean_ctor_set(x_615, 0, x_614); +lean_ctor_set(x_615, 1, x_611); +return x_615; } case 1: { -lean_object* x_628; lean_object* x_629; uint8_t x_630; lean_object* x_631; lean_object* x_632; +lean_object* x_616; lean_object* x_617; uint8_t x_618; lean_object* x_619; lean_object* x_620; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_628 = lean_ctor_get(x_620, 1); -lean_inc(x_628); -if (lean_is_exclusive(x_620)) { - lean_ctor_release(x_620, 0); - lean_ctor_release(x_620, 1); - x_629 = x_620; +x_616 = lean_ctor_get(x_608, 1); +lean_inc(x_616); +if (lean_is_exclusive(x_608)) { + lean_ctor_release(x_608, 0); + lean_ctor_release(x_608, 1); + x_617 = x_608; } else { - lean_dec_ref(x_620); - x_629 = lean_box(0); + lean_dec_ref(x_608); + x_617 = lean_box(0); } -x_630 = 1; -x_631 = lean_box(x_630); -if (lean_is_scalar(x_629)) { - x_632 = lean_alloc_ctor(0, 2, 0); +x_618 = 1; +x_619 = lean_box(x_618); +if (lean_is_scalar(x_617)) { + x_620 = lean_alloc_ctor(0, 2, 0); } else { - x_632 = x_629; + x_620 = x_617; } -lean_ctor_set(x_632, 0, x_631); -lean_ctor_set(x_632, 1, x_628); -return x_632; +lean_ctor_set(x_620, 0, x_619); +lean_ctor_set(x_620, 1, x_616); +return x_620; } default: { -lean_object* x_633; lean_object* x_634; -x_633 = lean_ctor_get(x_620, 1); -lean_inc(x_633); -lean_dec(x_620); -x_634 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_633); +lean_object* x_621; lean_object* x_622; +x_621 = lean_ctor_get(x_608, 1); +lean_inc(x_621); +lean_dec(x_608); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_622 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_621); +if (lean_obj_tag(x_622) == 0) +{ +lean_object* x_623; uint8_t x_624; +x_623 = lean_ctor_get(x_622, 0); +lean_inc(x_623); +x_624 = lean_unbox(x_623); +lean_dec(x_623); +switch (x_624) { +case 0: +{ +lean_object* x_625; lean_object* x_626; uint8_t x_627; lean_object* x_628; lean_object* x_629; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_625 = lean_ctor_get(x_622, 1); +lean_inc(x_625); +if (lean_is_exclusive(x_622)) { + lean_ctor_release(x_622, 0); + lean_ctor_release(x_622, 1); + x_626 = x_622; +} else { + lean_dec_ref(x_622); + x_626 = lean_box(0); +} +x_627 = 0; +x_628 = lean_box(x_627); +if (lean_is_scalar(x_626)) { + x_629 = lean_alloc_ctor(0, 2, 0); +} else { + x_629 = x_626; +} +lean_ctor_set(x_629, 0, x_628); +lean_ctor_set(x_629, 1, x_625); +return x_629; +} +case 1: +{ +lean_object* x_630; lean_object* x_631; uint8_t x_632; lean_object* x_633; lean_object* x_634; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_630 = lean_ctor_get(x_622, 1); +lean_inc(x_630); +if (lean_is_exclusive(x_622)) { + lean_ctor_release(x_622, 0); + lean_ctor_release(x_622, 1); + x_631 = x_622; +} else { + lean_dec_ref(x_622); + x_631 = lean_box(0); +} +x_632 = 1; +x_633 = lean_box(x_632); +if (lean_is_scalar(x_631)) { + x_634 = lean_alloc_ctor(0, 2, 0); +} else { + x_634 = x_631; +} +lean_ctor_set(x_634, 0, x_633); +lean_ctor_set(x_634, 1, x_630); return x_634; } -} -} -else +default: { -lean_object* x_635; lean_object* x_636; lean_object* x_637; lean_object* x_638; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_635 = lean_ctor_get(x_620, 0); +lean_object* x_635; lean_object* x_636; +x_635 = lean_ctor_get(x_622, 1); lean_inc(x_635); -x_636 = lean_ctor_get(x_620, 1); -lean_inc(x_636); -if (lean_is_exclusive(x_620)) { - lean_ctor_release(x_620, 0); - lean_ctor_release(x_620, 1); - x_637 = x_620; -} else { - lean_dec_ref(x_620); - x_637 = lean_box(0); -} -if (lean_is_scalar(x_637)) { - x_638 = lean_alloc_ctor(1, 2, 0); -} else { - x_638 = x_637; -} -lean_ctor_set(x_638, 0, x_635); -lean_ctor_set(x_638, 1, x_636); -return x_638; -} +lean_dec(x_622); +x_636 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_635); +return x_636; } } } else { -lean_object* x_639; lean_object* x_640; lean_object* x_641; lean_object* x_642; +lean_object* x_637; lean_object* x_638; lean_object* x_639; lean_object* x_640; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_639 = lean_ctor_get(x_606, 0); -lean_inc(x_639); -x_640 = lean_ctor_get(x_606, 1); -lean_inc(x_640); -if (lean_is_exclusive(x_606)) { - lean_ctor_release(x_606, 0); - lean_ctor_release(x_606, 1); - x_641 = x_606; +x_637 = lean_ctor_get(x_622, 0); +lean_inc(x_637); +x_638 = lean_ctor_get(x_622, 1); +lean_inc(x_638); +if (lean_is_exclusive(x_622)) { + lean_ctor_release(x_622, 0); + lean_ctor_release(x_622, 1); + x_639 = x_622; } else { - lean_dec_ref(x_606); - x_641 = lean_box(0); + lean_dec_ref(x_622); + x_639 = lean_box(0); } -if (lean_is_scalar(x_641)) { - x_642 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_639)) { + x_640 = lean_alloc_ctor(1, 2, 0); } else { - x_642 = x_641; + x_640 = x_639; } -lean_ctor_set(x_642, 0, x_639); -lean_ctor_set(x_642, 1, x_640); -return x_642; +lean_ctor_set(x_640, 0, x_637); +lean_ctor_set(x_640, 1, x_638); +return x_640; } } } } else { -lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; +lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_643 = lean_ctor_get(x_592, 0); -lean_inc(x_643); -x_644 = lean_ctor_get(x_592, 1); -lean_inc(x_644); -if (lean_is_exclusive(x_592)) { - lean_ctor_release(x_592, 0); - lean_ctor_release(x_592, 1); - x_645 = x_592; +x_641 = lean_ctor_get(x_608, 0); +lean_inc(x_641); +x_642 = lean_ctor_get(x_608, 1); +lean_inc(x_642); +if (lean_is_exclusive(x_608)) { + lean_ctor_release(x_608, 0); + lean_ctor_release(x_608, 1); + x_643 = x_608; } else { - lean_dec_ref(x_592); - x_645 = lean_box(0); + lean_dec_ref(x_608); + x_643 = lean_box(0); } -if (lean_is_scalar(x_645)) { - x_646 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_643)) { + x_644 = lean_alloc_ctor(1, 2, 0); } else { - x_646 = x_645; + x_644 = x_643; } -lean_ctor_set(x_646, 0, x_643); -lean_ctor_set(x_646, 1, x_644); -return x_646; +lean_ctor_set(x_644, 0, x_641); +lean_ctor_set(x_644, 1, x_642); +return x_644; } } } } else { -lean_object* x_647; lean_object* x_648; lean_object* x_649; lean_object* x_650; +lean_object* x_645; lean_object* x_646; lean_object* x_647; lean_object* x_648; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_647 = lean_ctor_get(x_578, 0); -lean_inc(x_647); -x_648 = lean_ctor_get(x_578, 1); -lean_inc(x_648); -if (lean_is_exclusive(x_578)) { - lean_ctor_release(x_578, 0); - lean_ctor_release(x_578, 1); - x_649 = x_578; +x_645 = lean_ctor_get(x_594, 0); +lean_inc(x_645); +x_646 = lean_ctor_get(x_594, 1); +lean_inc(x_646); +if (lean_is_exclusive(x_594)) { + lean_ctor_release(x_594, 0); + lean_ctor_release(x_594, 1); + x_647 = x_594; } else { - lean_dec_ref(x_578); - x_649 = lean_box(0); + lean_dec_ref(x_594); + x_647 = lean_box(0); } -if (lean_is_scalar(x_649)) { - x_650 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_647)) { + x_648 = lean_alloc_ctor(1, 2, 0); } else { - x_650 = x_649; + x_648 = x_647; } -lean_ctor_set(x_650, 0, x_647); -lean_ctor_set(x_650, 1, x_648); -return x_650; +lean_ctor_set(x_648, 0, x_645); +lean_ctor_set(x_648, 1, x_646); +return x_648; } } } } else { -lean_object* x_651; lean_object* x_652; lean_object* x_653; lean_object* x_654; +lean_object* x_649; lean_object* x_650; lean_object* x_651; lean_object* x_652; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_651 = lean_ctor_get(x_564, 0); -lean_inc(x_651); -x_652 = lean_ctor_get(x_564, 1); -lean_inc(x_652); -if (lean_is_exclusive(x_564)) { - lean_ctor_release(x_564, 0); - lean_ctor_release(x_564, 1); - x_653 = x_564; +x_649 = lean_ctor_get(x_580, 0); +lean_inc(x_649); +x_650 = lean_ctor_get(x_580, 1); +lean_inc(x_650); +if (lean_is_exclusive(x_580)) { + lean_ctor_release(x_580, 0); + lean_ctor_release(x_580, 1); + x_651 = x_580; } else { - lean_dec_ref(x_564); - x_653 = lean_box(0); + lean_dec_ref(x_580); + x_651 = lean_box(0); } -if (lean_is_scalar(x_653)) { - x_654 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_651)) { + x_652 = lean_alloc_ctor(1, 2, 0); } else { - x_654 = x_653; + x_652 = x_651; +} +lean_ctor_set(x_652, 0, x_649); +lean_ctor_set(x_652, 1, x_650); +return x_652; +} } -lean_ctor_set(x_654, 0, x_651); -lean_ctor_set(x_654, 1, x_652); -return x_654; } } else { -uint8_t x_655; -x_655 = l_Lean_Expr_isApp(x_2); -if (x_655 == 0) +lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_653 = lean_ctor_get(x_566, 0); +lean_inc(x_653); +x_654 = lean_ctor_get(x_566, 1); +lean_inc(x_654); +if (lean_is_exclusive(x_566)) { + lean_ctor_release(x_566, 0); + lean_ctor_release(x_566, 1); + x_655 = x_566; +} else { + lean_dec_ref(x_566); + x_655 = lean_box(0); +} +if (lean_is_scalar(x_655)) { + x_656 = lean_alloc_ctor(1, 2, 0); +} else { + x_656 = x_655; +} +lean_ctor_set(x_656, 0, x_653); +lean_ctor_set(x_656, 1, x_654); +return x_656; +} +} +else { -lean_object* x_656; +uint8_t x_657; +x_657 = l_Lean_Expr_isApp(x_2); +if (x_657 == 0) +{ +lean_object* x_658; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_656 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_561); -if (lean_obj_tag(x_656) == 0) +x_658 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_563); +if (lean_obj_tag(x_658) == 0) { -lean_object* x_657; uint8_t x_658; -x_657 = lean_ctor_get(x_656, 0); -lean_inc(x_657); -x_658 = lean_unbox(x_657); -lean_dec(x_657); -switch (x_658) { -case 0: -{ -lean_object* x_659; lean_object* x_660; uint8_t x_661; lean_object* x_662; lean_object* x_663; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_659 = lean_ctor_get(x_656, 1); +lean_object* x_659; uint8_t x_660; +x_659 = lean_ctor_get(x_658, 0); lean_inc(x_659); -if (lean_is_exclusive(x_656)) { - lean_ctor_release(x_656, 0); - lean_ctor_release(x_656, 1); - x_660 = x_656; -} else { - lean_dec_ref(x_656); - x_660 = lean_box(0); -} -x_661 = 0; -x_662 = lean_box(x_661); -if (lean_is_scalar(x_660)) { - x_663 = lean_alloc_ctor(0, 2, 0); -} else { - x_663 = x_660; -} -lean_ctor_set(x_663, 0, x_662); -lean_ctor_set(x_663, 1, x_659); -return x_663; -} -case 1: +x_660 = lean_unbox(x_659); +lean_dec(x_659); +switch (x_660) { +case 0: { -lean_object* x_664; lean_object* x_665; uint8_t x_666; lean_object* x_667; lean_object* x_668; +lean_object* x_661; lean_object* x_662; uint8_t x_663; lean_object* x_664; lean_object* x_665; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_664 = lean_ctor_get(x_656, 1); -lean_inc(x_664); -if (lean_is_exclusive(x_656)) { - lean_ctor_release(x_656, 0); - lean_ctor_release(x_656, 1); - x_665 = x_656; +x_661 = lean_ctor_get(x_658, 1); +lean_inc(x_661); +if (lean_is_exclusive(x_658)) { + lean_ctor_release(x_658, 0); + lean_ctor_release(x_658, 1); + x_662 = x_658; } else { - lean_dec_ref(x_656); - x_665 = lean_box(0); + lean_dec_ref(x_658); + x_662 = lean_box(0); } -x_666 = 1; -x_667 = lean_box(x_666); -if (lean_is_scalar(x_665)) { - x_668 = lean_alloc_ctor(0, 2, 0); +x_663 = 0; +x_664 = lean_box(x_663); +if (lean_is_scalar(x_662)) { + x_665 = lean_alloc_ctor(0, 2, 0); } else { - x_668 = x_665; + x_665 = x_662; } -lean_ctor_set(x_668, 0, x_667); -lean_ctor_set(x_668, 1, x_664); -return x_668; +lean_ctor_set(x_665, 0, x_664); +lean_ctor_set(x_665, 1, x_661); +return x_665; +} +case 1: +{ +lean_object* x_666; lean_object* x_667; uint8_t x_668; lean_object* x_669; lean_object* x_670; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_666 = lean_ctor_get(x_658, 1); +lean_inc(x_666); +if (lean_is_exclusive(x_658)) { + lean_ctor_release(x_658, 0); + lean_ctor_release(x_658, 1); + x_667 = x_658; +} else { + lean_dec_ref(x_658); + x_667 = lean_box(0); +} +x_668 = 1; +x_669 = lean_box(x_668); +if (lean_is_scalar(x_667)) { + x_670 = lean_alloc_ctor(0, 2, 0); +} else { + x_670 = x_667; +} +lean_ctor_set(x_670, 0, x_669); +lean_ctor_set(x_670, 1, x_666); +return x_670; } default: { -lean_object* x_669; lean_object* x_670; -x_669 = lean_ctor_get(x_656, 1); -lean_inc(x_669); -lean_dec(x_656); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_670 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_669); -if (lean_obj_tag(x_670) == 0) -{ -lean_object* x_671; uint8_t x_672; -x_671 = lean_ctor_get(x_670, 0); +lean_object* x_671; lean_object* x_672; +x_671 = lean_ctor_get(x_658, 1); lean_inc(x_671); -x_672 = lean_unbox(x_671); -lean_dec(x_671); -switch (x_672) { -case 0: +lean_dec(x_658); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_672 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_671); +if (lean_obj_tag(x_672) == 0) { -lean_object* x_673; lean_object* x_674; uint8_t x_675; lean_object* x_676; lean_object* x_677; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_673 = lean_ctor_get(x_670, 1); +lean_object* x_673; uint8_t x_674; +x_673 = lean_ctor_get(x_672, 0); lean_inc(x_673); -if (lean_is_exclusive(x_670)) { - lean_ctor_release(x_670, 0); - lean_ctor_release(x_670, 1); - x_674 = x_670; -} else { - lean_dec_ref(x_670); - x_674 = lean_box(0); -} -x_675 = 0; -x_676 = lean_box(x_675); -if (lean_is_scalar(x_674)) { - x_677 = lean_alloc_ctor(0, 2, 0); -} else { - x_677 = x_674; -} -lean_ctor_set(x_677, 0, x_676); -lean_ctor_set(x_677, 1, x_673); -return x_677; -} -case 1: +x_674 = lean_unbox(x_673); +lean_dec(x_673); +switch (x_674) { +case 0: { -lean_object* x_678; lean_object* x_679; uint8_t x_680; lean_object* x_681; lean_object* x_682; +lean_object* x_675; lean_object* x_676; uint8_t x_677; lean_object* x_678; lean_object* x_679; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_678 = lean_ctor_get(x_670, 1); -lean_inc(x_678); -if (lean_is_exclusive(x_670)) { - lean_ctor_release(x_670, 0); - lean_ctor_release(x_670, 1); - x_679 = x_670; +x_675 = lean_ctor_get(x_672, 1); +lean_inc(x_675); +if (lean_is_exclusive(x_672)) { + lean_ctor_release(x_672, 0); + lean_ctor_release(x_672, 1); + x_676 = x_672; } else { - lean_dec_ref(x_670); - x_679 = lean_box(0); + lean_dec_ref(x_672); + x_676 = lean_box(0); } -x_680 = 1; -x_681 = lean_box(x_680); -if (lean_is_scalar(x_679)) { - x_682 = lean_alloc_ctor(0, 2, 0); +x_677 = 0; +x_678 = lean_box(x_677); +if (lean_is_scalar(x_676)) { + x_679 = lean_alloc_ctor(0, 2, 0); } else { - x_682 = x_679; + x_679 = x_676; } -lean_ctor_set(x_682, 0, x_681); -lean_ctor_set(x_682, 1, x_678); -return x_682; +lean_ctor_set(x_679, 0, x_678); +lean_ctor_set(x_679, 1, x_675); +return x_679; +} +case 1: +{ +lean_object* x_680; lean_object* x_681; uint8_t x_682; lean_object* x_683; lean_object* x_684; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_680 = lean_ctor_get(x_672, 1); +lean_inc(x_680); +if (lean_is_exclusive(x_672)) { + lean_ctor_release(x_672, 0); + lean_ctor_release(x_672, 1); + x_681 = x_672; +} else { + lean_dec_ref(x_672); + x_681 = lean_box(0); +} +x_682 = 1; +x_683 = lean_box(x_682); +if (lean_is_scalar(x_681)) { + x_684 = lean_alloc_ctor(0, 2, 0); +} else { + x_684 = x_681; +} +lean_ctor_set(x_684, 0, x_683); +lean_ctor_set(x_684, 1, x_680); +return x_684; } default: { -lean_object* x_683; lean_object* x_684; -x_683 = lean_ctor_get(x_670, 1); -lean_inc(x_683); -lean_dec(x_670); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_684 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_683); -if (lean_obj_tag(x_684) == 0) -{ -lean_object* x_685; uint8_t x_686; -x_685 = lean_ctor_get(x_684, 0); +lean_object* x_685; lean_object* x_686; +x_685 = lean_ctor_get(x_672, 1); lean_inc(x_685); -x_686 = lean_unbox(x_685); -lean_dec(x_685); -switch (x_686) { -case 0: +lean_dec(x_672); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_686 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_685); +if (lean_obj_tag(x_686) == 0) { -lean_object* x_687; lean_object* x_688; uint8_t x_689; lean_object* x_690; lean_object* x_691; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_687 = lean_ctor_get(x_684, 1); +lean_object* x_687; uint8_t x_688; +x_687 = lean_ctor_get(x_686, 0); lean_inc(x_687); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_688 = x_684; -} else { - lean_dec_ref(x_684); - x_688 = lean_box(0); -} -x_689 = 0; -x_690 = lean_box(x_689); -if (lean_is_scalar(x_688)) { - x_691 = lean_alloc_ctor(0, 2, 0); -} else { - x_691 = x_688; -} -lean_ctor_set(x_691, 0, x_690); -lean_ctor_set(x_691, 1, x_687); -return x_691; -} -case 1: +x_688 = lean_unbox(x_687); +lean_dec(x_687); +switch (x_688) { +case 0: { -lean_object* x_692; lean_object* x_693; uint8_t x_694; lean_object* x_695; lean_object* x_696; +lean_object* x_689; lean_object* x_690; uint8_t x_691; lean_object* x_692; lean_object* x_693; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_692 = lean_ctor_get(x_684, 1); -lean_inc(x_692); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_693 = x_684; +x_689 = lean_ctor_get(x_686, 1); +lean_inc(x_689); +if (lean_is_exclusive(x_686)) { + lean_ctor_release(x_686, 0); + lean_ctor_release(x_686, 1); + x_690 = x_686; } else { - lean_dec_ref(x_684); - x_693 = lean_box(0); + lean_dec_ref(x_686); + x_690 = lean_box(0); } -x_694 = 1; -x_695 = lean_box(x_694); -if (lean_is_scalar(x_693)) { - x_696 = lean_alloc_ctor(0, 2, 0); +x_691 = 0; +x_692 = lean_box(x_691); +if (lean_is_scalar(x_690)) { + x_693 = lean_alloc_ctor(0, 2, 0); } else { - x_696 = x_693; + x_693 = x_690; } -lean_ctor_set(x_696, 0, x_695); -lean_ctor_set(x_696, 1, x_692); -return x_696; +lean_ctor_set(x_693, 0, x_692); +lean_ctor_set(x_693, 1, x_689); +return x_693; +} +case 1: +{ +lean_object* x_694; lean_object* x_695; uint8_t x_696; lean_object* x_697; lean_object* x_698; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_694 = lean_ctor_get(x_686, 1); +lean_inc(x_694); +if (lean_is_exclusive(x_686)) { + lean_ctor_release(x_686, 0); + lean_ctor_release(x_686, 1); + x_695 = x_686; +} else { + lean_dec_ref(x_686); + x_695 = lean_box(0); +} +x_696 = 1; +x_697 = lean_box(x_696); +if (lean_is_scalar(x_695)) { + x_698 = lean_alloc_ctor(0, 2, 0); +} else { + x_698 = x_695; +} +lean_ctor_set(x_698, 0, x_697); +lean_ctor_set(x_698, 1, x_694); +return x_698; } default: { -lean_object* x_697; lean_object* x_698; -x_697 = lean_ctor_get(x_684, 1); -lean_inc(x_697); -lean_dec(x_684); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_698 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_697); -if (lean_obj_tag(x_698) == 0) -{ -lean_object* x_699; uint8_t x_700; -x_699 = lean_ctor_get(x_698, 0); +lean_object* x_699; lean_object* x_700; +x_699 = lean_ctor_get(x_686, 1); lean_inc(x_699); -x_700 = lean_unbox(x_699); -lean_dec(x_699); -switch (x_700) { -case 0: -{ -lean_object* x_701; lean_object* x_702; uint8_t x_703; lean_object* x_704; lean_object* x_705; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_701 = lean_ctor_get(x_698, 1); -lean_inc(x_701); -if (lean_is_exclusive(x_698)) { - lean_ctor_release(x_698, 0); - lean_ctor_release(x_698, 1); - x_702 = x_698; -} else { - lean_dec_ref(x_698); - x_702 = lean_box(0); -} -x_703 = 0; -x_704 = lean_box(x_703); -if (lean_is_scalar(x_702)) { - x_705 = lean_alloc_ctor(0, 2, 0); -} else { - x_705 = x_702; -} -lean_ctor_set(x_705, 0, x_704); -lean_ctor_set(x_705, 1, x_701); -return x_705; -} -case 1: -{ -lean_object* x_706; lean_object* x_707; uint8_t x_708; lean_object* x_709; lean_object* x_710; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_706 = lean_ctor_get(x_698, 1); -lean_inc(x_706); -if (lean_is_exclusive(x_698)) { - lean_ctor_release(x_698, 0); - lean_ctor_release(x_698, 1); - x_707 = x_698; -} else { - lean_dec_ref(x_698); - x_707 = lean_box(0); -} -x_708 = 1; -x_709 = lean_box(x_708); -if (lean_is_scalar(x_707)) { - x_710 = lean_alloc_ctor(0, 2, 0); -} else { - x_710 = x_707; -} -lean_ctor_set(x_710, 0, x_709); -lean_ctor_set(x_710, 1, x_706); -return x_710; -} -default: -{ -lean_object* x_711; lean_object* x_712; -x_711 = lean_ctor_get(x_698, 1); -lean_inc(x_711); -lean_dec(x_698); +lean_dec(x_686); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_712 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_711); -if (lean_obj_tag(x_712) == 0) +x_700 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_699); +if (lean_obj_tag(x_700) == 0) { -lean_object* x_713; uint8_t x_714; -x_713 = lean_ctor_get(x_712, 0); -lean_inc(x_713); -x_714 = lean_unbox(x_713); -lean_dec(x_713); -switch (x_714) { +lean_object* x_701; uint8_t x_702; +x_701 = lean_ctor_get(x_700, 0); +lean_inc(x_701); +x_702 = lean_unbox(x_701); +lean_dec(x_701); +switch (x_702) { case 0: { -lean_object* x_715; lean_object* x_716; uint8_t x_717; lean_object* x_718; lean_object* x_719; +lean_object* x_703; lean_object* x_704; uint8_t x_705; lean_object* x_706; lean_object* x_707; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_715 = lean_ctor_get(x_712, 1); -lean_inc(x_715); -if (lean_is_exclusive(x_712)) { - lean_ctor_release(x_712, 0); - lean_ctor_release(x_712, 1); - x_716 = x_712; +x_703 = lean_ctor_get(x_700, 1); +lean_inc(x_703); +if (lean_is_exclusive(x_700)) { + lean_ctor_release(x_700, 0); + lean_ctor_release(x_700, 1); + x_704 = x_700; } else { - lean_dec_ref(x_712); - x_716 = lean_box(0); + lean_dec_ref(x_700); + x_704 = lean_box(0); } -x_717 = 0; -x_718 = lean_box(x_717); -if (lean_is_scalar(x_716)) { - x_719 = lean_alloc_ctor(0, 2, 0); +x_705 = 0; +x_706 = lean_box(x_705); +if (lean_is_scalar(x_704)) { + x_707 = lean_alloc_ctor(0, 2, 0); } else { - x_719 = x_716; + x_707 = x_704; } -lean_ctor_set(x_719, 0, x_718); -lean_ctor_set(x_719, 1, x_715); -return x_719; +lean_ctor_set(x_707, 0, x_706); +lean_ctor_set(x_707, 1, x_703); +return x_707; } case 1: { -lean_object* x_720; lean_object* x_721; uint8_t x_722; lean_object* x_723; lean_object* x_724; +lean_object* x_708; lean_object* x_709; uint8_t x_710; lean_object* x_711; lean_object* x_712; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_720 = lean_ctor_get(x_712, 1); -lean_inc(x_720); -if (lean_is_exclusive(x_712)) { - lean_ctor_release(x_712, 0); - lean_ctor_release(x_712, 1); - x_721 = x_712; +x_708 = lean_ctor_get(x_700, 1); +lean_inc(x_708); +if (lean_is_exclusive(x_700)) { + lean_ctor_release(x_700, 0); + lean_ctor_release(x_700, 1); + x_709 = x_700; } else { - lean_dec_ref(x_712); - x_721 = lean_box(0); + lean_dec_ref(x_700); + x_709 = lean_box(0); } -x_722 = 1; -x_723 = lean_box(x_722); -if (lean_is_scalar(x_721)) { - x_724 = lean_alloc_ctor(0, 2, 0); +x_710 = 1; +x_711 = lean_box(x_710); +if (lean_is_scalar(x_709)) { + x_712 = lean_alloc_ctor(0, 2, 0); } else { - x_724 = x_721; + x_712 = x_709; } -lean_ctor_set(x_724, 0, x_723); -lean_ctor_set(x_724, 1, x_720); -return x_724; +lean_ctor_set(x_712, 0, x_711); +lean_ctor_set(x_712, 1, x_708); +return x_712; } default: { -lean_object* x_725; lean_object* x_726; -x_725 = lean_ctor_get(x_712, 1); -lean_inc(x_725); -lean_dec(x_712); -x_726 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_725); +lean_object* x_713; lean_object* x_714; +x_713 = lean_ctor_get(x_700, 1); +lean_inc(x_713); +lean_dec(x_700); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_714 = l_Lean_Meta_isDefEqStringLit(x_1, x_2, x_3, x_4, x_5, x_6, x_713); +if (lean_obj_tag(x_714) == 0) +{ +lean_object* x_715; uint8_t x_716; +x_715 = lean_ctor_get(x_714, 0); +lean_inc(x_715); +x_716 = lean_unbox(x_715); +lean_dec(x_715); +switch (x_716) { +case 0: +{ +lean_object* x_717; lean_object* x_718; uint8_t x_719; lean_object* x_720; lean_object* x_721; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_717 = lean_ctor_get(x_714, 1); +lean_inc(x_717); +if (lean_is_exclusive(x_714)) { + lean_ctor_release(x_714, 0); + lean_ctor_release(x_714, 1); + x_718 = x_714; +} else { + lean_dec_ref(x_714); + x_718 = lean_box(0); +} +x_719 = 0; +x_720 = lean_box(x_719); +if (lean_is_scalar(x_718)) { + x_721 = lean_alloc_ctor(0, 2, 0); +} else { + x_721 = x_718; +} +lean_ctor_set(x_721, 0, x_720); +lean_ctor_set(x_721, 1, x_717); +return x_721; +} +case 1: +{ +lean_object* x_722; lean_object* x_723; uint8_t x_724; lean_object* x_725; lean_object* x_726; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_722 = lean_ctor_get(x_714, 1); +lean_inc(x_722); +if (lean_is_exclusive(x_714)) { + lean_ctor_release(x_714, 0); + lean_ctor_release(x_714, 1); + x_723 = x_714; +} else { + lean_dec_ref(x_714); + x_723 = lean_box(0); +} +x_724 = 1; +x_725 = lean_box(x_724); +if (lean_is_scalar(x_723)) { + x_726 = lean_alloc_ctor(0, 2, 0); +} else { + x_726 = x_723; +} +lean_ctor_set(x_726, 0, x_725); +lean_ctor_set(x_726, 1, x_722); return x_726; } -} -} -else +default: { -lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_727 = lean_ctor_get(x_712, 0); +lean_object* x_727; lean_object* x_728; +x_727 = lean_ctor_get(x_714, 1); lean_inc(x_727); -x_728 = lean_ctor_get(x_712, 1); -lean_inc(x_728); -if (lean_is_exclusive(x_712)) { - lean_ctor_release(x_712, 0); - lean_ctor_release(x_712, 1); - x_729 = x_712; -} else { - lean_dec_ref(x_712); - x_729 = lean_box(0); -} -if (lean_is_scalar(x_729)) { - x_730 = lean_alloc_ctor(1, 2, 0); -} else { - x_730 = x_729; -} -lean_ctor_set(x_730, 0, x_727); -lean_ctor_set(x_730, 1, x_728); -return x_730; -} +lean_dec(x_714); +x_728 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqOnFailure(x_1, x_2, x_3, x_4, x_5, x_6, x_727); +return x_728; } } } else { -lean_object* x_731; lean_object* x_732; lean_object* x_733; lean_object* x_734; +lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_731 = lean_ctor_get(x_698, 0); -lean_inc(x_731); -x_732 = lean_ctor_get(x_698, 1); -lean_inc(x_732); -if (lean_is_exclusive(x_698)) { - lean_ctor_release(x_698, 0); - lean_ctor_release(x_698, 1); - x_733 = x_698; +x_729 = lean_ctor_get(x_714, 0); +lean_inc(x_729); +x_730 = lean_ctor_get(x_714, 1); +lean_inc(x_730); +if (lean_is_exclusive(x_714)) { + lean_ctor_release(x_714, 0); + lean_ctor_release(x_714, 1); + x_731 = x_714; } else { - lean_dec_ref(x_698); - x_733 = lean_box(0); + lean_dec_ref(x_714); + x_731 = lean_box(0); } -if (lean_is_scalar(x_733)) { - x_734 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_731)) { + x_732 = lean_alloc_ctor(1, 2, 0); } else { - x_734 = x_733; + x_732 = x_731; } -lean_ctor_set(x_734, 0, x_731); -lean_ctor_set(x_734, 1, x_732); -return x_734; +lean_ctor_set(x_732, 0, x_729); +lean_ctor_set(x_732, 1, x_730); +return x_732; } } } } else { -lean_object* x_735; lean_object* x_736; lean_object* x_737; lean_object* x_738; +lean_object* x_733; lean_object* x_734; lean_object* x_735; lean_object* x_736; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_735 = lean_ctor_get(x_684, 0); -lean_inc(x_735); -x_736 = lean_ctor_get(x_684, 1); -lean_inc(x_736); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_737 = x_684; +x_733 = lean_ctor_get(x_700, 0); +lean_inc(x_733); +x_734 = lean_ctor_get(x_700, 1); +lean_inc(x_734); +if (lean_is_exclusive(x_700)) { + lean_ctor_release(x_700, 0); + lean_ctor_release(x_700, 1); + x_735 = x_700; } else { - lean_dec_ref(x_684); - x_737 = lean_box(0); + lean_dec_ref(x_700); + x_735 = lean_box(0); } -if (lean_is_scalar(x_737)) { - x_738 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_735)) { + x_736 = lean_alloc_ctor(1, 2, 0); } else { - x_738 = x_737; + x_736 = x_735; } -lean_ctor_set(x_738, 0, x_735); -lean_ctor_set(x_738, 1, x_736); -return x_738; +lean_ctor_set(x_736, 0, x_733); +lean_ctor_set(x_736, 1, x_734); +return x_736; } } } } else { -lean_object* x_739; lean_object* x_740; lean_object* x_741; lean_object* x_742; +lean_object* x_737; lean_object* x_738; lean_object* x_739; lean_object* x_740; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_739 = lean_ctor_get(x_670, 0); -lean_inc(x_739); -x_740 = lean_ctor_get(x_670, 1); -lean_inc(x_740); -if (lean_is_exclusive(x_670)) { - lean_ctor_release(x_670, 0); - lean_ctor_release(x_670, 1); - x_741 = x_670; +x_737 = lean_ctor_get(x_686, 0); +lean_inc(x_737); +x_738 = lean_ctor_get(x_686, 1); +lean_inc(x_738); +if (lean_is_exclusive(x_686)) { + lean_ctor_release(x_686, 0); + lean_ctor_release(x_686, 1); + x_739 = x_686; } else { - lean_dec_ref(x_670); - x_741 = lean_box(0); + lean_dec_ref(x_686); + x_739 = lean_box(0); } -if (lean_is_scalar(x_741)) { - x_742 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_739)) { + x_740 = lean_alloc_ctor(1, 2, 0); } else { - x_742 = x_741; + x_740 = x_739; } -lean_ctor_set(x_742, 0, x_739); -lean_ctor_set(x_742, 1, x_740); -return x_742; +lean_ctor_set(x_740, 0, x_737); +lean_ctor_set(x_740, 1, x_738); +return x_740; } } } } else { -lean_object* x_743; lean_object* x_744; lean_object* x_745; lean_object* x_746; +lean_object* x_741; lean_object* x_742; lean_object* x_743; lean_object* x_744; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_743 = lean_ctor_get(x_656, 0); -lean_inc(x_743); -x_744 = lean_ctor_get(x_656, 1); -lean_inc(x_744); -if (lean_is_exclusive(x_656)) { - lean_ctor_release(x_656, 0); - lean_ctor_release(x_656, 1); - x_745 = x_656; +x_741 = lean_ctor_get(x_672, 0); +lean_inc(x_741); +x_742 = lean_ctor_get(x_672, 1); +lean_inc(x_742); +if (lean_is_exclusive(x_672)) { + lean_ctor_release(x_672, 0); + lean_ctor_release(x_672, 1); + x_743 = x_672; } else { - lean_dec_ref(x_656); - x_745 = lean_box(0); + lean_dec_ref(x_672); + x_743 = lean_box(0); } -if (lean_is_scalar(x_745)) { - x_746 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_743)) { + x_744 = lean_alloc_ctor(1, 2, 0); } else { - x_746 = x_745; + x_744 = x_743; +} +lean_ctor_set(x_744, 0, x_741); +lean_ctor_set(x_744, 1, x_742); +return x_744; +} } -lean_ctor_set(x_746, 0, x_743); -lean_ctor_set(x_746, 1, x_744); -return x_746; } } else { -lean_object* x_747; +lean_object* x_745; lean_object* x_746; lean_object* x_747; lean_object* x_748; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_745 = lean_ctor_get(x_658, 0); +lean_inc(x_745); +x_746 = lean_ctor_get(x_658, 1); +lean_inc(x_746); +if (lean_is_exclusive(x_658)) { + lean_ctor_release(x_658, 0); + lean_ctor_release(x_658, 1); + x_747 = x_658; +} else { + lean_dec_ref(x_658); + x_747 = lean_box(0); +} +if (lean_is_scalar(x_747)) { + x_748 = lean_alloc_ctor(1, 2, 0); +} else { + x_748 = x_747; +} +lean_ctor_set(x_748, 0, x_745); +lean_ctor_set(x_748, 1, x_746); +return x_748; +} +} +else +{ +lean_object* x_749; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_747 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_561); -if (lean_obj_tag(x_747) == 0) +x_749 = l_Lean_Meta_isDefEqNative(x_1, x_2, x_3, x_4, x_5, x_6, x_563); +if (lean_obj_tag(x_749) == 0) { -lean_object* x_748; uint8_t x_749; -x_748 = lean_ctor_get(x_747, 0); -lean_inc(x_748); -x_749 = lean_unbox(x_748); -lean_dec(x_748); -switch (x_749) { -case 0: -{ -lean_object* x_750; lean_object* x_751; uint8_t x_752; lean_object* x_753; lean_object* x_754; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_750 = lean_ctor_get(x_747, 1); +lean_object* x_750; uint8_t x_751; +x_750 = lean_ctor_get(x_749, 0); lean_inc(x_750); -if (lean_is_exclusive(x_747)) { - lean_ctor_release(x_747, 0); - lean_ctor_release(x_747, 1); - x_751 = x_747; -} else { - lean_dec_ref(x_747); - x_751 = lean_box(0); -} -x_752 = 0; -x_753 = lean_box(x_752); -if (lean_is_scalar(x_751)) { - x_754 = lean_alloc_ctor(0, 2, 0); -} else { - x_754 = x_751; -} -lean_ctor_set(x_754, 0, x_753); -lean_ctor_set(x_754, 1, x_750); -return x_754; -} -case 1: +x_751 = lean_unbox(x_750); +lean_dec(x_750); +switch (x_751) { +case 0: { -lean_object* x_755; lean_object* x_756; uint8_t x_757; lean_object* x_758; lean_object* x_759; +lean_object* x_752; lean_object* x_753; uint8_t x_754; lean_object* x_755; lean_object* x_756; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_755 = lean_ctor_get(x_747, 1); -lean_inc(x_755); -if (lean_is_exclusive(x_747)) { - lean_ctor_release(x_747, 0); - lean_ctor_release(x_747, 1); - x_756 = x_747; +x_752 = lean_ctor_get(x_749, 1); +lean_inc(x_752); +if (lean_is_exclusive(x_749)) { + lean_ctor_release(x_749, 0); + lean_ctor_release(x_749, 1); + x_753 = x_749; } else { - lean_dec_ref(x_747); - x_756 = lean_box(0); + lean_dec_ref(x_749); + x_753 = lean_box(0); } -x_757 = 1; -x_758 = lean_box(x_757); -if (lean_is_scalar(x_756)) { - x_759 = lean_alloc_ctor(0, 2, 0); +x_754 = 0; +x_755 = lean_box(x_754); +if (lean_is_scalar(x_753)) { + x_756 = lean_alloc_ctor(0, 2, 0); } else { - x_759 = x_756; + x_756 = x_753; } -lean_ctor_set(x_759, 0, x_758); -lean_ctor_set(x_759, 1, x_755); -return x_759; +lean_ctor_set(x_756, 0, x_755); +lean_ctor_set(x_756, 1, x_752); +return x_756; +} +case 1: +{ +lean_object* x_757; lean_object* x_758; uint8_t x_759; lean_object* x_760; lean_object* x_761; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_757 = lean_ctor_get(x_749, 1); +lean_inc(x_757); +if (lean_is_exclusive(x_749)) { + lean_ctor_release(x_749, 0); + lean_ctor_release(x_749, 1); + x_758 = x_749; +} else { + lean_dec_ref(x_749); + x_758 = lean_box(0); +} +x_759 = 1; +x_760 = lean_box(x_759); +if (lean_is_scalar(x_758)) { + x_761 = lean_alloc_ctor(0, 2, 0); +} else { + x_761 = x_758; +} +lean_ctor_set(x_761, 0, x_760); +lean_ctor_set(x_761, 1, x_757); +return x_761; } default: { -lean_object* x_760; lean_object* x_761; -x_760 = lean_ctor_get(x_747, 1); -lean_inc(x_760); -lean_dec(x_747); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_761 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_760); -if (lean_obj_tag(x_761) == 0) -{ -lean_object* x_762; uint8_t x_763; -x_762 = lean_ctor_get(x_761, 0); +lean_object* x_762; lean_object* x_763; +x_762 = lean_ctor_get(x_749, 1); lean_inc(x_762); -x_763 = lean_unbox(x_762); -lean_dec(x_762); -switch (x_763) { -case 0: +lean_dec(x_749); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_763 = l_Lean_Meta_isDefEqNat(x_1, x_2, x_3, x_4, x_5, x_6, x_762); +if (lean_obj_tag(x_763) == 0) { -lean_object* x_764; lean_object* x_765; uint8_t x_766; lean_object* x_767; lean_object* x_768; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_764 = lean_ctor_get(x_761, 1); +lean_object* x_764; uint8_t x_765; +x_764 = lean_ctor_get(x_763, 0); lean_inc(x_764); -if (lean_is_exclusive(x_761)) { - lean_ctor_release(x_761, 0); - lean_ctor_release(x_761, 1); - x_765 = x_761; -} else { - lean_dec_ref(x_761); - x_765 = lean_box(0); -} -x_766 = 0; -x_767 = lean_box(x_766); -if (lean_is_scalar(x_765)) { - x_768 = lean_alloc_ctor(0, 2, 0); -} else { - x_768 = x_765; -} -lean_ctor_set(x_768, 0, x_767); -lean_ctor_set(x_768, 1, x_764); -return x_768; -} -case 1: +x_765 = lean_unbox(x_764); +lean_dec(x_764); +switch (x_765) { +case 0: { -lean_object* x_769; lean_object* x_770; uint8_t x_771; lean_object* x_772; lean_object* x_773; +lean_object* x_766; lean_object* x_767; uint8_t x_768; lean_object* x_769; lean_object* x_770; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_769 = lean_ctor_get(x_761, 1); -lean_inc(x_769); -if (lean_is_exclusive(x_761)) { - lean_ctor_release(x_761, 0); - lean_ctor_release(x_761, 1); - x_770 = x_761; +x_766 = lean_ctor_get(x_763, 1); +lean_inc(x_766); +if (lean_is_exclusive(x_763)) { + lean_ctor_release(x_763, 0); + lean_ctor_release(x_763, 1); + x_767 = x_763; } else { - lean_dec_ref(x_761); - x_770 = lean_box(0); + lean_dec_ref(x_763); + x_767 = lean_box(0); } -x_771 = 1; -x_772 = lean_box(x_771); -if (lean_is_scalar(x_770)) { - x_773 = lean_alloc_ctor(0, 2, 0); +x_768 = 0; +x_769 = lean_box(x_768); +if (lean_is_scalar(x_767)) { + x_770 = lean_alloc_ctor(0, 2, 0); } else { - x_773 = x_770; + x_770 = x_767; } -lean_ctor_set(x_773, 0, x_772); -lean_ctor_set(x_773, 1, x_769); -return x_773; +lean_ctor_set(x_770, 0, x_769); +lean_ctor_set(x_770, 1, x_766); +return x_770; +} +case 1: +{ +lean_object* x_771; lean_object* x_772; uint8_t x_773; lean_object* x_774; lean_object* x_775; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_771 = lean_ctor_get(x_763, 1); +lean_inc(x_771); +if (lean_is_exclusive(x_763)) { + lean_ctor_release(x_763, 0); + lean_ctor_release(x_763, 1); + x_772 = x_763; +} else { + lean_dec_ref(x_763); + x_772 = lean_box(0); +} +x_773 = 1; +x_774 = lean_box(x_773); +if (lean_is_scalar(x_772)) { + x_775 = lean_alloc_ctor(0, 2, 0); +} else { + x_775 = x_772; +} +lean_ctor_set(x_775, 0, x_774); +lean_ctor_set(x_775, 1, x_771); +return x_775; } default: { -lean_object* x_774; lean_object* x_775; -x_774 = lean_ctor_get(x_761, 1); -lean_inc(x_774); -lean_dec(x_761); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_775 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_774); -if (lean_obj_tag(x_775) == 0) -{ -lean_object* x_776; uint8_t x_777; -x_776 = lean_ctor_get(x_775, 0); +lean_object* x_776; lean_object* x_777; +x_776 = lean_ctor_get(x_763, 1); lean_inc(x_776); -x_777 = lean_unbox(x_776); -lean_dec(x_776); -switch (x_777) { -case 0: -{ -lean_object* x_778; lean_object* x_779; uint8_t x_780; lean_object* x_781; lean_object* x_782; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_778 = lean_ctor_get(x_775, 1); -lean_inc(x_778); -if (lean_is_exclusive(x_775)) { - lean_ctor_release(x_775, 0); - lean_ctor_release(x_775, 1); - x_779 = x_775; -} else { - lean_dec_ref(x_775); - x_779 = lean_box(0); -} -x_780 = 0; -x_781 = lean_box(x_780); -if (lean_is_scalar(x_779)) { - x_782 = lean_alloc_ctor(0, 2, 0); -} else { - x_782 = x_779; -} -lean_ctor_set(x_782, 0, x_781); -lean_ctor_set(x_782, 1, x_778); -return x_782; -} -case 1: -{ -lean_object* x_783; lean_object* x_784; uint8_t x_785; lean_object* x_786; lean_object* x_787; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_783 = lean_ctor_get(x_775, 1); -lean_inc(x_783); -if (lean_is_exclusive(x_775)) { - lean_ctor_release(x_775, 0); - lean_ctor_release(x_775, 1); - x_784 = x_775; -} else { - lean_dec_ref(x_775); - x_784 = lean_box(0); -} -x_785 = 1; -x_786 = lean_box(x_785); -if (lean_is_scalar(x_784)) { - x_787 = lean_alloc_ctor(0, 2, 0); -} else { - x_787 = x_784; -} -lean_ctor_set(x_787, 0, x_786); -lean_ctor_set(x_787, 1, x_783); -return x_787; -} -default: -{ -lean_object* x_788; lean_object* x_789; -x_788 = lean_ctor_get(x_775, 1); -lean_inc(x_788); -lean_dec(x_775); +lean_dec(x_763); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_789 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_788); -if (lean_obj_tag(x_789) == 0) +x_777 = l_Lean_Meta_isDefEqOffset(x_1, x_2, x_3, x_4, x_5, x_6, x_776); +if (lean_obj_tag(x_777) == 0) { -lean_object* x_790; uint8_t x_791; -x_790 = lean_ctor_get(x_789, 0); -lean_inc(x_790); -x_791 = lean_unbox(x_790); -lean_dec(x_790); -switch (x_791) { +lean_object* x_778; uint8_t x_779; +x_778 = lean_ctor_get(x_777, 0); +lean_inc(x_778); +x_779 = lean_unbox(x_778); +lean_dec(x_778); +switch (x_779) { case 0: { -lean_object* x_792; lean_object* x_793; uint8_t x_794; lean_object* x_795; lean_object* x_796; +lean_object* x_780; lean_object* x_781; uint8_t x_782; lean_object* x_783; lean_object* x_784; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_792 = lean_ctor_get(x_789, 1); -lean_inc(x_792); -if (lean_is_exclusive(x_789)) { - lean_ctor_release(x_789, 0); - lean_ctor_release(x_789, 1); - x_793 = x_789; +x_780 = lean_ctor_get(x_777, 1); +lean_inc(x_780); +if (lean_is_exclusive(x_777)) { + lean_ctor_release(x_777, 0); + lean_ctor_release(x_777, 1); + x_781 = x_777; } else { - lean_dec_ref(x_789); - x_793 = lean_box(0); + lean_dec_ref(x_777); + x_781 = lean_box(0); } -x_794 = 0; -x_795 = lean_box(x_794); -if (lean_is_scalar(x_793)) { - x_796 = lean_alloc_ctor(0, 2, 0); +x_782 = 0; +x_783 = lean_box(x_782); +if (lean_is_scalar(x_781)) { + x_784 = lean_alloc_ctor(0, 2, 0); } else { - x_796 = x_793; + x_784 = x_781; } -lean_ctor_set(x_796, 0, x_795); -lean_ctor_set(x_796, 1, x_792); -return x_796; +lean_ctor_set(x_784, 0, x_783); +lean_ctor_set(x_784, 1, x_780); +return x_784; } case 1: { -lean_object* x_797; lean_object* x_798; uint8_t x_799; lean_object* x_800; lean_object* x_801; +lean_object* x_785; lean_object* x_786; uint8_t x_787; lean_object* x_788; lean_object* x_789; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_797 = lean_ctor_get(x_789, 1); -lean_inc(x_797); -if (lean_is_exclusive(x_789)) { - lean_ctor_release(x_789, 0); - lean_ctor_release(x_789, 1); - x_798 = x_789; +x_785 = lean_ctor_get(x_777, 1); +lean_inc(x_785); +if (lean_is_exclusive(x_777)) { + lean_ctor_release(x_777, 0); + lean_ctor_release(x_777, 1); + x_786 = x_777; } else { - lean_dec_ref(x_789); - x_798 = lean_box(0); + lean_dec_ref(x_777); + x_786 = lean_box(0); } -x_799 = 1; -x_800 = lean_box(x_799); -if (lean_is_scalar(x_798)) { - x_801 = lean_alloc_ctor(0, 2, 0); +x_787 = 1; +x_788 = lean_box(x_787); +if (lean_is_scalar(x_786)) { + x_789 = lean_alloc_ctor(0, 2, 0); } else { - x_801 = x_798; + x_789 = x_786; } -lean_ctor_set(x_801, 0, x_800); -lean_ctor_set(x_801, 1, x_797); -return x_801; +lean_ctor_set(x_789, 0, x_788); +lean_ctor_set(x_789, 1, x_785); +return x_789; } default: { -lean_object* x_802; lean_object* x_803; -x_802 = lean_ctor_get(x_789, 1); -lean_inc(x_802); -lean_dec(x_789); -x_803 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqApp(x_1, x_2, x_3, x_4, x_5, x_6, x_802); +lean_object* x_790; lean_object* x_791; +x_790 = lean_ctor_get(x_777, 1); +lean_inc(x_790); +lean_dec(x_777); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_791 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqDelta(x_1, x_2, x_3, x_4, x_5, x_6, x_790); +if (lean_obj_tag(x_791) == 0) +{ +lean_object* x_792; uint8_t x_793; +x_792 = lean_ctor_get(x_791, 0); +lean_inc(x_792); +x_793 = lean_unbox(x_792); +lean_dec(x_792); +switch (x_793) { +case 0: +{ +lean_object* x_794; lean_object* x_795; uint8_t x_796; lean_object* x_797; lean_object* x_798; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_794 = lean_ctor_get(x_791, 1); +lean_inc(x_794); +if (lean_is_exclusive(x_791)) { + lean_ctor_release(x_791, 0); + lean_ctor_release(x_791, 1); + x_795 = x_791; +} else { + lean_dec_ref(x_791); + x_795 = lean_box(0); +} +x_796 = 0; +x_797 = lean_box(x_796); +if (lean_is_scalar(x_795)) { + x_798 = lean_alloc_ctor(0, 2, 0); +} else { + x_798 = x_795; +} +lean_ctor_set(x_798, 0, x_797); +lean_ctor_set(x_798, 1, x_794); +return x_798; +} +case 1: +{ +lean_object* x_799; lean_object* x_800; uint8_t x_801; lean_object* x_802; lean_object* x_803; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_799 = lean_ctor_get(x_791, 1); +lean_inc(x_799); +if (lean_is_exclusive(x_791)) { + lean_ctor_release(x_791, 0); + lean_ctor_release(x_791, 1); + x_800 = x_791; +} else { + lean_dec_ref(x_791); + x_800 = lean_box(0); +} +x_801 = 1; +x_802 = lean_box(x_801); +if (lean_is_scalar(x_800)) { + x_803 = lean_alloc_ctor(0, 2, 0); +} else { + x_803 = x_800; +} +lean_ctor_set(x_803, 0, x_802); +lean_ctor_set(x_803, 1, x_799); return x_803; } -} -} -else +default: { -lean_object* x_804; lean_object* x_805; lean_object* x_806; lean_object* x_807; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_804 = lean_ctor_get(x_789, 0); +lean_object* x_804; lean_object* x_805; +x_804 = lean_ctor_get(x_791, 1); lean_inc(x_804); -x_805 = lean_ctor_get(x_789, 1); -lean_inc(x_805); -if (lean_is_exclusive(x_789)) { - lean_ctor_release(x_789, 0); - lean_ctor_release(x_789, 1); - x_806 = x_789; -} else { - lean_dec_ref(x_789); - x_806 = lean_box(0); -} -if (lean_is_scalar(x_806)) { - x_807 = lean_alloc_ctor(1, 2, 0); -} else { - x_807 = x_806; -} -lean_ctor_set(x_807, 0, x_804); -lean_ctor_set(x_807, 1, x_805); -return x_807; -} +lean_dec(x_791); +x_805 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqApp(x_1, x_2, x_3, x_4, x_5, x_6, x_804); +return x_805; } } } else { -lean_object* x_808; lean_object* x_809; lean_object* x_810; lean_object* x_811; +lean_object* x_806; lean_object* x_807; lean_object* x_808; lean_object* x_809; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_808 = lean_ctor_get(x_775, 0); -lean_inc(x_808); -x_809 = lean_ctor_get(x_775, 1); -lean_inc(x_809); -if (lean_is_exclusive(x_775)) { - lean_ctor_release(x_775, 0); - lean_ctor_release(x_775, 1); - x_810 = x_775; +x_806 = lean_ctor_get(x_791, 0); +lean_inc(x_806); +x_807 = lean_ctor_get(x_791, 1); +lean_inc(x_807); +if (lean_is_exclusive(x_791)) { + lean_ctor_release(x_791, 0); + lean_ctor_release(x_791, 1); + x_808 = x_791; } else { - lean_dec_ref(x_775); - x_810 = lean_box(0); + lean_dec_ref(x_791); + x_808 = lean_box(0); } -if (lean_is_scalar(x_810)) { - x_811 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_808)) { + x_809 = lean_alloc_ctor(1, 2, 0); } else { - x_811 = x_810; + x_809 = x_808; } -lean_ctor_set(x_811, 0, x_808); -lean_ctor_set(x_811, 1, x_809); -return x_811; +lean_ctor_set(x_809, 0, x_806); +lean_ctor_set(x_809, 1, x_807); +return x_809; } } } } else { -lean_object* x_812; lean_object* x_813; lean_object* x_814; lean_object* x_815; +lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_812 = lean_ctor_get(x_761, 0); -lean_inc(x_812); -x_813 = lean_ctor_get(x_761, 1); -lean_inc(x_813); -if (lean_is_exclusive(x_761)) { - lean_ctor_release(x_761, 0); - lean_ctor_release(x_761, 1); - x_814 = x_761; +x_810 = lean_ctor_get(x_777, 0); +lean_inc(x_810); +x_811 = lean_ctor_get(x_777, 1); +lean_inc(x_811); +if (lean_is_exclusive(x_777)) { + lean_ctor_release(x_777, 0); + lean_ctor_release(x_777, 1); + x_812 = x_777; } else { - lean_dec_ref(x_761); - x_814 = lean_box(0); + lean_dec_ref(x_777); + x_812 = lean_box(0); } -if (lean_is_scalar(x_814)) { - x_815 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_812)) { + x_813 = lean_alloc_ctor(1, 2, 0); } else { - x_815 = x_814; + x_813 = x_812; } -lean_ctor_set(x_815, 0, x_812); -lean_ctor_set(x_815, 1, x_813); -return x_815; +lean_ctor_set(x_813, 0, x_810); +lean_ctor_set(x_813, 1, x_811); +return x_813; } } } } else { -lean_object* x_816; lean_object* x_817; lean_object* x_818; lean_object* x_819; +lean_object* x_814; lean_object* x_815; lean_object* x_816; lean_object* x_817; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_816 = lean_ctor_get(x_747, 0); -lean_inc(x_816); -x_817 = lean_ctor_get(x_747, 1); -lean_inc(x_817); -if (lean_is_exclusive(x_747)) { - lean_ctor_release(x_747, 0); - lean_ctor_release(x_747, 1); - x_818 = x_747; +x_814 = lean_ctor_get(x_763, 0); +lean_inc(x_814); +x_815 = lean_ctor_get(x_763, 1); +lean_inc(x_815); +if (lean_is_exclusive(x_763)) { + lean_ctor_release(x_763, 0); + lean_ctor_release(x_763, 1); + x_816 = x_763; } else { - lean_dec_ref(x_747); - x_818 = lean_box(0); + lean_dec_ref(x_763); + x_816 = lean_box(0); } -if (lean_is_scalar(x_818)) { - x_819 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_816)) { + x_817 = lean_alloc_ctor(1, 2, 0); } else { - x_819 = x_818; -} -lean_ctor_set(x_819, 0, x_816); -lean_ctor_set(x_819, 1, x_817); -return x_819; -} + x_817 = x_816; } +lean_ctor_set(x_817, 0, x_814); +lean_ctor_set(x_817, 1, x_815); +return x_817; } } } } else { -uint8_t x_977; +lean_object* x_818; lean_object* x_819; lean_object* x_820; lean_object* x_821; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_977 = !lean_is_exclusive(x_10); -if (x_977 == 0) -{ -return x_10; +x_818 = lean_ctor_get(x_749, 0); +lean_inc(x_818); +x_819 = lean_ctor_get(x_749, 1); +lean_inc(x_819); +if (lean_is_exclusive(x_749)) { + lean_ctor_release(x_749, 0); + lean_ctor_release(x_749, 1); + x_820 = x_749; +} else { + lean_dec_ref(x_749); + x_820 = lean_box(0); +} +if (lean_is_scalar(x_820)) { + x_821 = lean_alloc_ctor(1, 2, 0); +} else { + x_821 = x_820; +} +lean_ctor_set(x_821, 0, x_818); +lean_ctor_set(x_821, 1, x_819); +return x_821; +} +} } -else -{ -lean_object* x_978; lean_object* x_979; lean_object* x_980; -x_978 = lean_ctor_get(x_10, 0); -x_979 = lean_ctor_get(x_10, 1); -lean_inc(x_979); -lean_inc(x_978); -lean_dec(x_10); -x_980 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_980, 0, x_978); -lean_ctor_set(x_980, 1, x_979); -return x_980; } } } else { -uint8_t x_981; lean_object* x_982; lean_object* x_983; +uint8_t x_979; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_981 = 1; -x_982 = lean_box(x_981); -x_983 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_983, 0, x_982); -lean_ctor_set(x_983, 1, x_9); -return x_983; +x_979 = !lean_is_exclusive(x_12); +if (x_979 == 0) +{ +return x_12; +} +else +{ +lean_object* x_980; lean_object* x_981; lean_object* x_982; +x_980 = lean_ctor_get(x_12, 0); +x_981 = lean_ctor_get(x_12, 1); +lean_inc(x_981); +lean_inc(x_980); +lean_dec(x_12); +x_982 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_982, 0, x_980); +lean_ctor_set(x_982, 1, x_981); +return x_982; +} +} +} +else +{ +uint8_t x_983; lean_object* x_984; lean_object* x_985; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_983 = 1; +x_984 = lean_box(x_983); +x_985 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_985, 0, x_984); +lean_ctor_set(x_985, 1, x_11); +return x_985; +} +} +} +else +{ +uint8_t x_1005; lean_object* x_1006; lean_object* x_1007; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1005 = 1; +x_1006 = lean_box(x_1005); +x_1007 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1007, 0, x_1006); +lean_ctor_set(x_1007, 1, x_9); +return x_1007; } } } @@ -61201,7 +64079,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_isExprDefEqAuxImpl___lambda__1(lean_object* _start: { lean_object* x_9; lean_object* x_10; -x_9 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__3; +x_9 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3; lean_inc(x_6); x_10 = l_Lean_Core_checkMaxHeartbeats(x_9, x_6, x_7, x_8); if (lean_obj_tag(x_10) == 0) @@ -63200,7 +66078,7 @@ lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean lean_inc(x_2); x_19 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_19, 0, x_2); -x_20 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_20 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_21 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -63310,7 +66188,7 @@ lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean lean_inc(x_2); x_55 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_55, 0, x_2); -x_56 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__13; +x_56 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17; x_57 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_57, 0, x_56); lean_ctor_set(x_57, 1, x_55); @@ -63353,7 +66231,7 @@ static lean_object* _init_l_Lean_Meta_isExprDefEqAuxImpl___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_1 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_2 = l_Lean_Meta_isExprDefEqAuxImpl___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -63451,11 +66329,11 @@ lean_dec(x_3); return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_12978_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_13898_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__4; +x_2 = l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4; x_3 = l_Lean_registerTraceClass(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -63495,7 +66373,7 @@ lean_object* x_16; lean_object* x_17; lean_object* x_18; x_16 = lean_ctor_get(x_15, 1); lean_inc(x_16); lean_dec(x_15); -x_17 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__6; +x_17 = l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__2; x_18 = l_Lean_registerTraceClass(x_17, x_16); return x_18; } @@ -63664,6 +66542,80 @@ lean_dec_ref(res); res = initialize_Lean_Meta_UnificationHint(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__1); +l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__2); +l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__3); +l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1___closed__4); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__1); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__2); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__1___closed__3); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__1); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__2); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__3); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__4); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__5); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__6); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__7); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__8); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__9); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__10); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__11); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__12); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__13); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__14); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__15); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__16); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___lambda__2___closed__17); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__1); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__2); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__3); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__4); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__5); +l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6(); +lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__3___closed__6); +l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1 = _init_l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1(); +lean_mark_persistent(l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__4___closed__1); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__1); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__2); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__3); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__4); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__5); +l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6(); +lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___closed__6); l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta___spec__1___closed__1 = _init_l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta___spec__1___closed__1(); lean_mark_persistent(l_Lean_Meta_checkpointDefEq___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEta___spec__1___closed__1); l_Lean_Meta_isDefEqStringLit___closed__1 = _init_l_Lean_Meta_isDefEqStringLit___closed__1(); @@ -63706,18 +66658,6 @@ l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__14 = lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__14); l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15(); lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__15); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__16); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__17); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__18); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__19); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__20); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_checkTypesAndAssign___closed__21); l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__1 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__1(); lean_mark_persistent(l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__1); l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__2 = _init_l_Std_Range_forIn_loop___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___spec__1___closed__2(); @@ -63726,8 +66666,6 @@ l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDecl lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__1); l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2(); lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__2); -l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3(); -lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_hasLetDeclsInBetween___closed__3); l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeclsFrom___closed__1 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeclsFrom___closed__1(); lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps_collectLetDeclsFrom___closed__1); l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__1 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__1(); @@ -63742,20 +66680,20 @@ l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__ lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__5); l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__6 = _init_l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__6(); lean_mark_persistent(l___private_Lean_Meta_ExprDefEq_0__Lean_Meta_mkLambdaFVarsWithLetDeps___closed__6); -l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1(); -lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__1); -l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2(); -lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341____closed__2); -res = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3341_(lean_io_mk_world()); +l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1(); +lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__1); +l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2(); +lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225____closed__2); +res = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4225_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Meta_CheckAssignment_checkAssignmentExceptionId = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Meta_CheckAssignment_checkAssignmentExceptionId); lean_dec_ref(res); -l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1(); -lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__1); -l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2(); -lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355____closed__2); -res = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_3355_(lean_io_mk_world()); +l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1(); +lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__1); +l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2 = _init_l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2(); +lean_mark_persistent(l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239____closed__2); +res = l_Lean_Meta_CheckAssignment_initFn____x40_Lean_Meta_ExprDefEq___hyg_4239_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Meta_CheckAssignment_outOfScopeExceptionId = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Meta_CheckAssignment_outOfScopeExceptionId); @@ -63836,8 +66774,6 @@ l_Lean_Meta_CheckAssignment_check___closed__16 = _init_l_Lean_Meta_CheckAssignme lean_mark_persistent(l_Lean_Meta_CheckAssignment_check___closed__16); l_Lean_Expr_withAppAux___at_Lean_Meta_CheckAssignment_checkApp___spec__3___boxed__const__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Meta_CheckAssignment_checkApp___spec__3___boxed__const__1(); lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Meta_CheckAssignment_checkApp___spec__3___boxed__const__1); -l_Lean_Meta_CheckAssignment_checkApp___closed__1 = _init_l_Lean_Meta_CheckAssignment_checkApp___closed__1(); -lean_mark_persistent(l_Lean_Meta_CheckAssignment_checkApp___closed__1); l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__1(); lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__1); l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Meta_CheckAssignment_checkMVar___spec__49___closed__2(); @@ -63976,7 +66912,7 @@ l_Lean_Meta_isExprDefEqAuxImpl___closed__3 = _init_l_Lean_Meta_isExprDefEqAuxImp lean_mark_persistent(l_Lean_Meta_isExprDefEqAuxImpl___closed__3); l_Lean_Meta_isExprDefEqAuxImpl___closed__4 = _init_l_Lean_Meta_isExprDefEqAuxImpl___closed__4(); lean_mark_persistent(l_Lean_Meta_isExprDefEqAuxImpl___closed__4); -res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_12978_(lean_io_mk_world()); +res = l_Lean_Meta_initFn____x40_Lean_Meta_ExprDefEq___hyg_13898_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/IndPredBelow.c b/stage0/stdlib/Lean/Meta/IndPredBelow.c index 45bb649d2b..b21c9ca9f0 100644 --- a/stage0/stdlib/Lean/Meta/IndPredBelow.c +++ b/stage0/stdlib/Lean/Meta/IndPredBelow.c @@ -34,7 +34,6 @@ lean_object* l_Lean_registerTraceClass(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_IndPredBelow_mkConstructor___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_IndPredBelow_backwardsChaining___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_IndPredBelow_mkBelowMatcher_convertToBelow___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_IndPredBelow_mkCtorType_copyVarName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); @@ -477,6 +476,7 @@ static lean_object* l_Array_mapIdxM_map___at_Lean_Meta_IndPredBelow_mkBelowMatch extern lean_object* l_Lean_instInhabitedInductiveVal; static lean_object* l_Lean_getConstInfoCtor___at_Lean_Meta_IndPredBelow_mkConstructor___spec__1___closed__2; lean_object* l_List_mapTRAux___at_Lean_Meta_substCore___spec__7(lean_object*, lean_object*); +lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_IndPredBelow_mkBrecOnDecl_mkIH___closed__2; extern lean_object* l_Lean_brecOnSuffix; static lean_object* l_Array_mapIdxM_map___at_Lean_Meta_IndPredBelow_mkBelowMatcher___spec__3___lambda__1___closed__2; @@ -1383,7 +1383,7 @@ x_12 = lean_array_uget(x_3, x_2); x_13 = lean_unsigned_to_nat(0u); x_14 = lean_array_uset(x_3, x_2, x_13); x_15 = x_12; -x_16 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_15, x_4, x_5, x_6, x_7, x_8); +x_16 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_15, x_4, x_5, x_6, x_7, x_8); if (lean_obj_tag(x_16) == 0) { lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; lean_object* x_22; @@ -1693,7 +1693,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_IndPredBelow_mkContext(lean_object* x_1, le _start: { lean_object* x_7; -x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; @@ -12351,7 +12351,7 @@ lean_inc(x_16); lean_dec(x_14); x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); -x_18 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_17, x_2, x_3, x_4, x_5, x_16); +x_18 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_17, x_2, x_3, x_4, x_5, x_16); if (lean_obj_tag(x_18) == 0) { lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; @@ -12490,7 +12490,7 @@ lean_object* x_17; lean_object* x_18; lean_dec(x_5); x_17 = l_Lean_Expr_constName_x21(x_3); lean_inc(x_17); -x_18 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_17, x_6, x_7, x_8, x_9, x_10); +x_18 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_17, x_6, x_7, x_8, x_9, x_10); if (lean_obj_tag(x_18) == 0) { uint8_t x_19; @@ -22926,7 +22926,7 @@ x_31 = lean_ctor_get(x_7, 1); lean_inc(x_31); lean_dec(x_7); lean_inc(x_1); -x_32 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_31); +x_32 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_31); if (lean_obj_tag(x_32) == 0) { lean_object* x_33; uint8_t x_34; diff --git a/stage0/stdlib/Lean/Meta/Injective.c b/stage0/stdlib/Lean/Meta/Injective.c index c53b349216..da44f37994 100644 --- a/stage0/stdlib/Lean/Meta/Injective.c +++ b/stage0/stdlib/Lean/Meta/Injective.c @@ -21,7 +21,6 @@ lean_object* l_Lean_Expr_mvarId_x21(lean_object*); static lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveTheoremTypeCore_x3f_mkArgs2___closed__4; static lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveEqTheoremValue___lambda__1___closed__4; lean_object* l_Lean_stringToMessageData(lean_object*); -lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_injTheoremFailureHeader___closed__4; @@ -162,6 +161,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_genInjectivity; static lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveTheoremTypeCore_x3f_mkArgs2___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveTheoremTypeCore_x3f_mkArgs2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveTheoremTypeCore_x3f_mkArgs2___closed__2; +lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveTheoremTypeCore_x3f___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_elimOptParam___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -5133,7 +5133,7 @@ if (x_22 == 0) { lean_object* x_23; lean_free_object(x_12); -x_23 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_15); +x_23 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_15); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; uint8_t x_25; @@ -5327,7 +5327,7 @@ lean_dec(x_49); if (x_59 == 0) { lean_object* x_60; -x_60 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_50); +x_60 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_1, x_2, x_3, x_4, x_5, x_50); if (lean_obj_tag(x_60) == 0) { lean_object* x_61; uint8_t x_62; diff --git a/stage0/stdlib/Lean/Meta/RecursorInfo.c b/stage0/stdlib/Lean/Meta/RecursorInfo.c index 9d041b763d..482096632f 100644 --- a/stage0/stdlib/Lean/Meta/RecursorInfo.c +++ b/stage0/stdlib/Lean/Meta/RecursorInfo.c @@ -26,7 +26,6 @@ static lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___at_Lean_Meta_i uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_CheckAssignment_checkApp___spec__2(lean_object*, size_t, size_t); lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__5___lambda__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__13; lean_object* lean_mk_empty_array_with_capacity(lean_object*); @@ -57,7 +56,7 @@ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705_ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__14; static lean_object* l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__6; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__5; -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getProduceMotiveAndRecursive___spec__3___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___closed__4; @@ -97,24 +96,19 @@ lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___closed__1; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____closed__6; lean_object* lean_string_append(lean_object*, lean_object*); -static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1; static lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__5___closed__1; lean_object* l_List_range(lean_object*); lean_object* l_Lean_throwError___at_Lean_registerTagAttribute___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_checkMotive___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getParamsPos___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_setEnv___at_Lean_registerTagAttribute___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__3; static lean_object* l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__13; -static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2; lean_object* l_Lean_throwErrorAt___at_Lean_getAttrParamOptPrio___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__4(lean_object*, lean_object*); static lean_object* l_Lean_Meta_recursorAttribute___closed__3; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__5; -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___closed__1; static lean_object* l_List_toStringAux___at_Lean_Meta_RecursorInfo_instToStringRecursorInfo___spec__4___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMotiveLevel___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -190,7 +184,6 @@ static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosD LEAN_EXPORT lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___lambda__4___boxed(lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__13; static lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___lambda__7___closed__1; -static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4; static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__1; static lean_object* l_Array_qpartition_loop___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__4___closed__1; static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__2; @@ -202,7 +195,6 @@ lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_recursorAttribute___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_recursorAttribute___lambda__1___closed__1; -static lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3; static lean_object* l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__1; static lean_object* l_List_toString___at_Lean_Meta_RecursorInfo_instToStringRecursorInfo___spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_recursorAttribute___lambda__5___boxed(lean_object*); @@ -253,6 +245,7 @@ static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_RecursorInfo static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoAux___spec__3___closed__2; extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getParamsPos___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___lambda__4(lean_object*); static lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getParamsPos___spec__2___closed__1; lean_object* l_Lean_registerBuiltinAttribute(lean_object*, lean_object*); @@ -264,6 +257,7 @@ uint8_t l_Array_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getProduceMotiveAndRecursive(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_toStringAux___at_Lean_Meta_RecursorInfo_instToStringRecursorInfo___spec__8___closed__3; LEAN_EXPORT lean_object* l_List_toStringAux___at_Lean_Meta_RecursorInfo_instToStringRecursorInfo___spec__4(uint8_t, lean_object*); +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_recursorAttribute___lambda__5(lean_object*); static lean_object* l_Lean_Meta_recursorAttribute___closed__11; static lean_object* l_Lean_Meta_recursorAttribute___lambda__3___closed__2; @@ -304,8 +298,8 @@ LEAN_EXPORT lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initF extern lean_object* l_Lean_Expr_FindImpl_initCache; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Meta_Attribute_Recursor_getMajorPos___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__19; -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_redLength___rarg(lean_object*); +static lean_object* l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3; static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getProduceMotiveAndRecursive___closed__1; lean_object* l_Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_recursorAttribute___lambda__6(lean_object*); @@ -313,6 +307,7 @@ static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__6; static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___closed__5; lean_object* l_Lean_Meta_getLocalDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_expr_eqv(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoAux___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -320,7 +315,6 @@ LEAN_EXPORT lean_object* l_List_toStringAux___at_Lean_Meta_RecursorInfo_instToSt static lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos___closed__11; lean_object* l_Lean_Syntax_getKind(lean_object*); static lean_object* l_Lean_Meta_recursorAttribute___closed__4; -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_RecursorInfo_firstIndexPos___boxed(lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__4; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getProduceMotiveAndRecursive___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -339,7 +333,6 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_initFn____x40_Lean_Met LEAN_EXPORT lean_object* l_Lean_Meta_recursorAttribute___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMotiveLevel___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Attribute_Recursor_getMajorPos(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____lambda__2___closed__17; static lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getParamsPos___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -404,9 +397,11 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getUniv LEAN_EXPORT lean_object* l_Array_getIdx_x3f___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__5___closed__2; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); +lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_brecOnSuffix; static lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1___lambda__6___closed__1; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoAux___spec__2___closed__1; +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_registerParametricAttribute___at_Lean_Meta_initFn____x40_Lean_Meta_RecursorInfo___hyg_2705____spec__1(lean_object*, lean_object*); lean_object* l_Array_findIdx_x3f_loop___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_binSearchAux___at_Lean_Meta_getMajorPos_x3f___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1613,169 +1608,7 @@ lean_dec(x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_7 = lean_ctor_get(x_4, 3); -x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); -x_9 = !lean_is_exclusive(x_8); -if (x_9 == 0) -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_8, 0); -lean_inc(x_7); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_7); -lean_ctor_set(x_11, 1, x_10); -lean_ctor_set_tag(x_8, 1); -lean_ctor_set(x_8, 0, x_11); -return x_8; -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_8, 0); -x_13 = lean_ctor_get(x_8, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_8); -lean_inc(x_7); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_7); -lean_ctor_set(x_14, 1, x_12); -x_15 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_13); -return x_15; -} -} -} -static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("'"); -return x_1; -} -} -static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string("' is not a inductive type"); -return x_1; -} -} -static lean_object* _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -lean_inc(x_1); -x_7 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); -if (lean_obj_tag(x_7) == 0) -{ -lean_object* x_8; -x_8 = lean_ctor_get(x_7, 0); -lean_inc(x_8); -if (lean_obj_tag(x_8) == 5) -{ -uint8_t x_9; -lean_dec(x_1); -x_9 = !lean_is_exclusive(x_7); -if (x_9 == 0) -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_7, 0); -lean_dec(x_10); -x_11 = lean_ctor_get(x_8, 0); -lean_inc(x_11); -lean_dec(x_8); -lean_ctor_set(x_7, 0, x_11); -return x_7; -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_7, 1); -lean_inc(x_12); -lean_dec(x_7); -x_13 = lean_ctor_get(x_8, 0); -lean_inc(x_13); -lean_dec(x_8); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_13); -lean_ctor_set(x_14, 1, x_12); -return x_14; -} -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_8); -x_15 = lean_ctor_get(x_7, 1); -lean_inc(x_15); -lean_dec(x_7); -x_16 = lean_box(0); -x_17 = l_Lean_mkConst(x_1, x_16); -x_18 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_18, 0, x_17); -x_19 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2; -x_20 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_18); -x_21 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4; -x_22 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(x_22, x_2, x_3, x_4, x_5, x_15); -return x_23; -} -} -else -{ -uint8_t x_24; -lean_dec(x_1); -x_24 = !lean_is_exclusive(x_7); -if (x_24 == 0) -{ -return x_7; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_7, 0); -x_26 = lean_ctor_get(x_7, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_7); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} -} -} -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -1825,7 +1658,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__4(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -1875,7 +1708,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_2) == 0) @@ -1931,7 +1764,7 @@ _start: lean_object* x_8; lean_object* x_9; x_8 = l_Lean_RecursorVal_getInduct(x_2); lean_inc(x_8); -x_9 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_8, x_3, x_4, x_5, x_6, x_7); +x_9 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_ExprDefEq_0__Lean_Meta_isDefEqEtaStruct___spec__1(x_8, x_3, x_4, x_5, x_6, x_7); if (lean_obj_tag(x_9) == 0) { uint8_t x_10; @@ -1951,7 +1784,7 @@ lean_dec(x_13); lean_inc(x_15); x_16 = l_List_range(x_15); x_17 = lean_box(0); -x_18 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(x_16, x_17); +x_18 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_16, x_17); x_19 = lean_ctor_get(x_2, 0); lean_inc(x_19); x_20 = lean_ctor_get(x_19, 1); @@ -1972,12 +1805,12 @@ x_27 = lean_ctor_get(x_2, 2); lean_inc(x_27); lean_inc(x_27); x_28 = l_List_range(x_27); -x_29 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__4(x_28, x_17); +x_29 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(x_28, x_17); x_30 = lean_ctor_get(x_2, 3); lean_inc(x_30); lean_inc(x_30); x_31 = l_List_range(x_30); -x_32 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5(x_27, x_31, x_17); +x_32 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(x_27, x_31, x_17); x_33 = lean_nat_add(x_30, x_27); lean_dec(x_27); lean_dec(x_30); @@ -2054,7 +1887,7 @@ lean_dec(x_48); lean_inc(x_50); x_51 = l_List_range(x_50); x_52 = lean_box(0); -x_53 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(x_51, x_52); +x_53 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_51, x_52); x_54 = lean_ctor_get(x_2, 0); lean_inc(x_54); x_55 = lean_ctor_get(x_54, 1); @@ -2075,12 +1908,12 @@ x_62 = lean_ctor_get(x_2, 2); lean_inc(x_62); lean_inc(x_62); x_63 = l_List_range(x_62); -x_64 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__4(x_63, x_52); +x_64 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(x_63, x_52); x_65 = lean_ctor_get(x_2, 3); lean_inc(x_65); lean_inc(x_65); x_66 = l_List_range(x_65); -x_67 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5(x_62, x_66, x_52); +x_67 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(x_62, x_66, x_52); x_68 = lean_nat_add(x_65, x_62); lean_dec(x_62); lean_dec(x_65); @@ -2170,35 +2003,11 @@ return x_85; } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_7; -} -} -LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__5(x_1, x_2, x_3); +x_4 = l_List_mapTRAux___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__3(x_1, x_2, x_3); lean_dec(x_1); return x_4; } @@ -2257,7 +2066,7 @@ static lean_object* _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_Recurs _start: { lean_object* x_1; -x_1 = lean_mk_string("' is not a recursor"); +x_1 = lean_mk_string("'"); return x_1; } } @@ -2270,6 +2079,23 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("' is not a recursor"); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -2323,11 +2149,11 @@ x_16 = lean_box(0); x_17 = l_Lean_mkConst(x_1, x_16); x_18 = lean_alloc_ctor(2, 1, 0); lean_ctor_set(x_18, 0, x_17); -x_19 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2; +x_19 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2; x_20 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_18); -x_21 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2; +x_21 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4; x_22 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_22, 0, x_20); lean_ctor_set(x_22, 1, x_21); @@ -3099,7 +2925,7 @@ x_13 = l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___lamb x_14 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_14, 0, x_13); lean_ctor_set(x_14, 1, x_12); -x_15 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2; +x_15 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2; x_16 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_16, 0, x_14); lean_ctor_set(x_16, 1, x_15); @@ -4830,7 +4656,7 @@ lean_ctor_set(x_25, 0, x_12); x_26 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_26, 0, x_24); lean_ctor_set(x_26, 1, x_25); -x_27 = l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2; +x_27 = l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2; x_28 = lean_alloc_ctor(10, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -12043,18 +11869,14 @@ l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__17 = _init_l_Lean_Me lean_mark_persistent(l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__17); l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__18 = _init_l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__18(); lean_mark_persistent(l_Lean_Meta_RecursorInfo_instToStringRecursorInfo___closed__18); -l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1(); -lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__1); -l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2(); -lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__2); -l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3(); -lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__3); -l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4 = _init_l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4(); -lean_mark_persistent(l_Lean_getConstInfoInduct___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_mkRecursorInfoForKernelRec___spec__1___closed__4); l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__1 = _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__1(); lean_mark_persistent(l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__1); l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2 = _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2(); lean_mark_persistent(l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__2); +l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3 = _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3(); +lean_mark_persistent(l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__3); +l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4 = _init_l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4(); +lean_mark_persistent(l_Lean_getConstInfoRec___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___spec__1___closed__4); l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___closed__1 = _init_l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___closed__1(); lean_mark_persistent(l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosIfAuxRecursor_x3f___closed__1); l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_checkMotive___closed__1 = _init_l___private_Lean_Meta_RecursorInfo_0__Lean_Meta_checkMotive___closed__1(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c index a9373c6d8c..cf6966b14e 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c @@ -58,6 +58,7 @@ lean_object* l_Lean_Meta_isClass_x3f(lean_object*, lean_object*, lean_object*, l LEAN_EXPORT lean_object* l_Lean_Meta_Simp_rewrite___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go___lambda__3___closed__10; +static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); @@ -66,6 +67,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_postDefault(lean_object*, lean_object* LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go___lambda__4___closed__1; uint8_t lean_usize_dec_lt(size_t, size_t); +static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14; static lean_object* l_Lean_Meta_Simp_rewrite___closed__9; static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__1; lean_object* lean_nat_add(lean_object*, lean_object*); @@ -75,6 +77,7 @@ lean_object* l_Lean_Meta_mkDecide(lean_object*, lean_object*, lean_object*, lean static lean_object* l_Lean_Meta_Simp_rewriteUsingDecide_x3f___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17; static lean_object* l_Lean_Meta_Simp_rewriteCtorEq_x3f___closed__2; lean_object* l_Lean_mkAppN(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -224,6 +227,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_rewrite___lambda__2___boxed(lean_objec static lean_object* l_Lean_Meta_Simp_rewriteCtorEq_x3f___lambda__1___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go___closed__5; static lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore_go___closed__3; +static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_rewrite_inErasedSet___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryLemmaCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Simp_SimpLemmas_0__Lean_Meta_isPerm___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -661,6 +665,40 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("\nsythesized value"); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("\nis not definitionally equal to"); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { @@ -769,267 +807,539 @@ return x_32; } case 1: { -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 1); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_45 = lean_ctor_get(x_6, 0); lean_inc(x_45); -lean_dec(x_12); -x_46 = lean_ctor_get(x_13, 0); +x_46 = lean_ctor_get(x_12, 1); lean_inc(x_46); +lean_dec(x_12); +x_47 = lean_ctor_get(x_13, 0); +lean_inc(x_47); lean_dec(x_13); +x_48 = lean_ctor_get(x_6, 1); +lean_inc(x_48); +x_49 = lean_ctor_get(x_6, 2); +lean_inc(x_49); +x_50 = lean_ctor_get(x_6, 3); +lean_inc(x_50); +x_51 = lean_ctor_get(x_6, 4); +lean_inc(x_51); +x_52 = !lean_is_exclusive(x_45); +if (x_52 == 0) +{ +uint8_t x_53; lean_object* x_54; lean_object* x_55; +x_53 = 3; +lean_ctor_set_uint8(x_45, 5, x_53); +x_54 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_54, 0, x_45); +lean_ctor_set(x_54, 1, x_48); +lean_ctor_set(x_54, 2, x_49); +lean_ctor_set(x_54, 3, x_50); +lean_ctor_set(x_54, 4, x_51); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -lean_inc(x_6); -x_47 = l_Lean_Meta_isExprDefEq(x_2, x_46, x_6, x_7, x_8, x_9, x_45); -if (lean_obj_tag(x_47) == 0) +lean_inc(x_47); +lean_inc(x_2); +x_55 = l_Lean_Meta_isExprDefEq(x_2, x_47, x_54, x_7, x_8, x_9, x_46); +if (lean_obj_tag(x_55) == 0) { -lean_object* x_48; uint8_t x_49; -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_unbox(x_48); -lean_dec(x_48); -if (x_49 == 0) +lean_object* x_56; uint8_t x_57; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_unbox(x_56); +lean_dec(x_56); +if (x_57 == 0) { -lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_70; lean_object* x_71; lean_object* x_72; uint8_t x_73; -x_50 = lean_ctor_get(x_47, 1); -lean_inc(x_50); -lean_dec(x_47); -x_51 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; -x_70 = lean_st_ref_get(x_9, x_50); -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_ctor_get(x_71, 3); -lean_inc(x_72); -lean_dec(x_71); -x_73 = lean_ctor_get_uint8(x_72, sizeof(void*)*1); -lean_dec(x_72); -if (x_73 == 0) -{ -lean_object* x_74; uint8_t x_75; -x_74 = lean_ctor_get(x_70, 1); -lean_inc(x_74); -lean_dec(x_70); -x_75 = 0; -x_52 = x_75; -x_53 = x_74; -goto block_69; -} -else -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_76 = lean_ctor_get(x_70, 1); -lean_inc(x_76); -lean_dec(x_70); -x_77 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2(x_51, x_4, x_5, x_6, x_7, x_8, x_9, x_76); -x_78 = lean_ctor_get(x_77, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_77, 1); -lean_inc(x_79); -lean_dec(x_77); -x_80 = lean_unbox(x_78); -lean_dec(x_78); -x_52 = x_80; -x_53 = x_79; -goto block_69; -} -block_69: -{ -lean_object* x_54; -x_54 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__9; -if (x_52 == 0) -{ -lean_object* x_55; lean_object* x_56; -lean_dec(x_3); -lean_dec(x_1); -x_55 = lean_box(0); -x_56 = lean_apply_8(x_54, x_55, x_4, x_5, x_6, x_7, x_8, x_9, x_53); -return x_56; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_57 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_57, 0, x_1); -x_58 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1___closed__8; -x_59 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -x_60 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13; -x_61 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -x_62 = l_Lean_indentExpr(x_3); -x_63 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -x_64 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_64, 0, x_63); -lean_ctor_set(x_64, 1, x_58); -x_65 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1(x_51, x_64, x_4, x_5, x_6, x_7, x_8, x_9, x_53); -x_66 = lean_ctor_get(x_65, 0); -lean_inc(x_66); -x_67 = lean_ctor_get(x_65, 1); -lean_inc(x_67); -lean_dec(x_65); -x_68 = lean_apply_8(x_54, x_66, x_4, x_5, x_6, x_7, x_8, x_9, x_67); -return x_68; -} -} -} -else -{ -uint8_t x_81; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_81 = !lean_is_exclusive(x_47); -if (x_81 == 0) -{ -lean_object* x_82; uint8_t x_83; lean_object* x_84; -x_82 = lean_ctor_get(x_47, 0); -lean_dec(x_82); -x_83 = 1; -x_84 = lean_box(x_83); -lean_ctor_set(x_47, 0, x_84); -return x_47; -} -else -{ -lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; -x_85 = lean_ctor_get(x_47, 1); -lean_inc(x_85); -lean_dec(x_47); -x_86 = 1; -x_87 = lean_box(x_86); -x_88 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_88, 0, x_87); -lean_ctor_set(x_88, 1, x_85); -return x_88; -} -} -} -else -{ -uint8_t x_89; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_89 = !lean_is_exclusive(x_47); +lean_object* x_58; lean_object* x_59; uint8_t x_60; lean_object* x_61; lean_object* x_86; lean_object* x_87; lean_object* x_88; uint8_t x_89; +x_58 = lean_ctor_get(x_55, 1); +lean_inc(x_58); +lean_dec(x_55); +x_59 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; +x_86 = lean_st_ref_get(x_9, x_58); +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_87, 3); +lean_inc(x_88); +lean_dec(x_87); +x_89 = lean_ctor_get_uint8(x_88, sizeof(void*)*1); +lean_dec(x_88); if (x_89 == 0) { -return x_47; +lean_object* x_90; uint8_t x_91; +x_90 = lean_ctor_get(x_86, 1); +lean_inc(x_90); +lean_dec(x_86); +x_91 = 0; +x_60 = x_91; +x_61 = x_90; +goto block_85; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_47, 0); -x_91 = lean_ctor_get(x_47, 1); -lean_inc(x_91); -lean_inc(x_90); +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_92 = lean_ctor_get(x_86, 1); +lean_inc(x_92); +lean_dec(x_86); +x_93 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2(x_59, x_4, x_5, x_6, x_7, x_8, x_9, x_92); +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); +lean_dec(x_93); +x_96 = lean_unbox(x_94); +lean_dec(x_94); +x_60 = x_96; +x_61 = x_95; +goto block_85; +} +block_85: +{ +lean_object* x_62; +x_62 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__9; +if (x_60 == 0) +{ +lean_object* x_63; lean_object* x_64; lean_dec(x_47); -x_92 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_92, 0, x_90); -lean_ctor_set(x_92, 1, x_91); -return x_92; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_63 = lean_box(0); +x_64 = lean_apply_8(x_62, x_63, x_4, x_5, x_6, x_7, x_8, x_9, x_61); +return x_64; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_65 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_65, 0, x_1); +x_66 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1___closed__8; +x_67 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_65); +x_68 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13; +x_69 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_69, 0, x_67); +lean_ctor_set(x_69, 1, x_68); +x_70 = l_Lean_indentExpr(x_3); +x_71 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +x_72 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15; +x_73 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +x_74 = l_Lean_indentExpr(x_47); +x_75 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +x_76 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17; +x_77 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +x_78 = l_Lean_indentExpr(x_2); +x_79 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +x_80 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_66); +x_81 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1(x_59, x_80, x_4, x_5, x_6, x_7, x_8, x_9, x_61); +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +x_83 = lean_ctor_get(x_81, 1); +lean_inc(x_83); +lean_dec(x_81); +x_84 = lean_apply_8(x_62, x_82, x_4, x_5, x_6, x_7, x_8, x_9, x_83); +return x_84; +} +} +} +else +{ +uint8_t x_97; +lean_dec(x_47); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_97 = !lean_is_exclusive(x_55); +if (x_97 == 0) +{ +lean_object* x_98; uint8_t x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_55, 0); +lean_dec(x_98); +x_99 = 1; +x_100 = lean_box(x_99); +lean_ctor_set(x_55, 0, x_100); +return x_55; +} +else +{ +lean_object* x_101; uint8_t x_102; lean_object* x_103; lean_object* x_104; +x_101 = lean_ctor_get(x_55, 1); +lean_inc(x_101); +lean_dec(x_55); +x_102 = 1; +x_103 = lean_box(x_102); +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_103); +lean_ctor_set(x_104, 1, x_101); +return x_104; +} +} +} +else +{ +uint8_t x_105; +lean_dec(x_47); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_105 = !lean_is_exclusive(x_55); +if (x_105 == 0) +{ +return x_55; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = lean_ctor_get(x_55, 0); +x_107 = lean_ctor_get(x_55, 1); +lean_inc(x_107); +lean_inc(x_106); +lean_dec(x_55); +x_108 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_108, 0, x_106); +lean_ctor_set(x_108, 1, x_107); +return x_108; +} +} +} +else +{ +uint8_t x_109; uint8_t x_110; uint8_t x_111; uint8_t x_112; uint8_t x_113; uint8_t x_114; uint8_t x_115; uint8_t x_116; uint8_t x_117; uint8_t x_118; uint8_t x_119; uint8_t x_120; uint8_t x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_109 = lean_ctor_get_uint8(x_45, 0); +x_110 = lean_ctor_get_uint8(x_45, 1); +x_111 = lean_ctor_get_uint8(x_45, 2); +x_112 = lean_ctor_get_uint8(x_45, 3); +x_113 = lean_ctor_get_uint8(x_45, 4); +x_114 = lean_ctor_get_uint8(x_45, 6); +x_115 = lean_ctor_get_uint8(x_45, 7); +x_116 = lean_ctor_get_uint8(x_45, 8); +x_117 = lean_ctor_get_uint8(x_45, 9); +x_118 = lean_ctor_get_uint8(x_45, 10); +x_119 = lean_ctor_get_uint8(x_45, 11); +x_120 = lean_ctor_get_uint8(x_45, 12); +lean_dec(x_45); +x_121 = 3; +x_122 = lean_alloc_ctor(0, 0, 13); +lean_ctor_set_uint8(x_122, 0, x_109); +lean_ctor_set_uint8(x_122, 1, x_110); +lean_ctor_set_uint8(x_122, 2, x_111); +lean_ctor_set_uint8(x_122, 3, x_112); +lean_ctor_set_uint8(x_122, 4, x_113); +lean_ctor_set_uint8(x_122, 5, x_121); +lean_ctor_set_uint8(x_122, 6, x_114); +lean_ctor_set_uint8(x_122, 7, x_115); +lean_ctor_set_uint8(x_122, 8, x_116); +lean_ctor_set_uint8(x_122, 9, x_117); +lean_ctor_set_uint8(x_122, 10, x_118); +lean_ctor_set_uint8(x_122, 11, x_119); +lean_ctor_set_uint8(x_122, 12, x_120); +x_123 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_123, 0, x_122); +lean_ctor_set(x_123, 1, x_48); +lean_ctor_set(x_123, 2, x_49); +lean_ctor_set(x_123, 3, x_50); +lean_ctor_set(x_123, 4, x_51); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_47); +lean_inc(x_2); +x_124 = l_Lean_Meta_isExprDefEq(x_2, x_47, x_123, x_7, x_8, x_9, x_46); +if (lean_obj_tag(x_124) == 0) +{ +lean_object* x_125; uint8_t x_126; +x_125 = lean_ctor_get(x_124, 0); +lean_inc(x_125); +x_126 = lean_unbox(x_125); +lean_dec(x_125); +if (x_126 == 0) +{ +lean_object* x_127; lean_object* x_128; uint8_t x_129; lean_object* x_130; lean_object* x_155; lean_object* x_156; lean_object* x_157; uint8_t x_158; +x_127 = lean_ctor_get(x_124, 1); +lean_inc(x_127); +lean_dec(x_124); +x_128 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; +x_155 = lean_st_ref_get(x_9, x_127); +x_156 = lean_ctor_get(x_155, 0); +lean_inc(x_156); +x_157 = lean_ctor_get(x_156, 3); +lean_inc(x_157); +lean_dec(x_156); +x_158 = lean_ctor_get_uint8(x_157, sizeof(void*)*1); +lean_dec(x_157); +if (x_158 == 0) +{ +lean_object* x_159; uint8_t x_160; +x_159 = lean_ctor_get(x_155, 1); +lean_inc(x_159); +lean_dec(x_155); +x_160 = 0; +x_129 = x_160; +x_130 = x_159; +goto block_154; +} +else +{ +lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; uint8_t x_165; +x_161 = lean_ctor_get(x_155, 1); +lean_inc(x_161); +lean_dec(x_155); +x_162 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2(x_128, x_4, x_5, x_6, x_7, x_8, x_9, x_161); +x_163 = lean_ctor_get(x_162, 0); +lean_inc(x_163); +x_164 = lean_ctor_get(x_162, 1); +lean_inc(x_164); +lean_dec(x_162); +x_165 = lean_unbox(x_163); +lean_dec(x_163); +x_129 = x_165; +x_130 = x_164; +goto block_154; +} +block_154: +{ +lean_object* x_131; +x_131 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__9; +if (x_129 == 0) +{ +lean_object* x_132; lean_object* x_133; +lean_dec(x_47); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_132 = lean_box(0); +x_133 = lean_apply_8(x_131, x_132, x_4, x_5, x_6, x_7, x_8, x_9, x_130); +return x_133; +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_134 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_134, 0, x_1); +x_135 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1___closed__8; +x_136 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_136, 0, x_135); +lean_ctor_set(x_136, 1, x_134); +x_137 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13; +x_138 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_138, 0, x_136); +lean_ctor_set(x_138, 1, x_137); +x_139 = l_Lean_indentExpr(x_3); +x_140 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_140, 0, x_138); +lean_ctor_set(x_140, 1, x_139); +x_141 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15; +x_142 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_142, 0, x_140); +lean_ctor_set(x_142, 1, x_141); +x_143 = l_Lean_indentExpr(x_47); +x_144 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_144, 0, x_142); +lean_ctor_set(x_144, 1, x_143); +x_145 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17; +x_146 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_146, 0, x_144); +lean_ctor_set(x_146, 1, x_145); +x_147 = l_Lean_indentExpr(x_2); +x_148 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_148, 0, x_146); +lean_ctor_set(x_148, 1, x_147); +x_149 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_149, 0, x_148); +lean_ctor_set(x_149, 1, x_135); +x_150 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1(x_128, x_149, x_4, x_5, x_6, x_7, x_8, x_9, x_130); +x_151 = lean_ctor_get(x_150, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_dec(x_150); +x_153 = lean_apply_8(x_131, x_151, x_4, x_5, x_6, x_7, x_8, x_9, x_152); +return x_153; +} +} +} +else +{ +lean_object* x_166; lean_object* x_167; uint8_t x_168; lean_object* x_169; lean_object* x_170; +lean_dec(x_47); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_166 = lean_ctor_get(x_124, 1); +lean_inc(x_166); +if (lean_is_exclusive(x_124)) { + lean_ctor_release(x_124, 0); + lean_ctor_release(x_124, 1); + x_167 = x_124; +} else { + lean_dec_ref(x_124); + x_167 = lean_box(0); +} +x_168 = 1; +x_169 = lean_box(x_168); +if (lean_is_scalar(x_167)) { + x_170 = lean_alloc_ctor(0, 2, 0); +} else { + x_170 = x_167; +} +lean_ctor_set(x_170, 0, x_169); +lean_ctor_set(x_170, 1, x_166); +return x_170; +} +} +else +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; +lean_dec(x_47); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_171 = lean_ctor_get(x_124, 0); +lean_inc(x_171); +x_172 = lean_ctor_get(x_124, 1); +lean_inc(x_172); +if (lean_is_exclusive(x_124)) { + lean_ctor_release(x_124, 0); + lean_ctor_release(x_124, 1); + x_173 = x_124; +} else { + lean_dec_ref(x_124); + x_173 = lean_box(0); +} +if (lean_is_scalar(x_173)) { + x_174 = lean_alloc_ctor(1, 2, 0); +} else { + x_174 = x_173; +} +lean_ctor_set(x_174, 0, x_171); +lean_ctor_set(x_174, 1, x_172); +return x_174; } } } default: { -lean_object* x_93; lean_object* x_94; uint8_t x_95; lean_object* x_96; lean_object* x_113; lean_object* x_114; lean_object* x_115; uint8_t x_116; +lean_object* x_175; lean_object* x_176; uint8_t x_177; lean_object* x_178; lean_object* x_195; lean_object* x_196; lean_object* x_197; uint8_t x_198; lean_dec(x_2); -x_93 = lean_ctor_get(x_12, 1); -lean_inc(x_93); +x_175 = lean_ctor_get(x_12, 1); +lean_inc(x_175); lean_dec(x_12); -x_94 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; -x_113 = lean_st_ref_get(x_9, x_93); -x_114 = lean_ctor_get(x_113, 0); -lean_inc(x_114); -x_115 = lean_ctor_get(x_114, 3); -lean_inc(x_115); -lean_dec(x_114); -x_116 = lean_ctor_get_uint8(x_115, sizeof(void*)*1); -lean_dec(x_115); -if (x_116 == 0) +x_176 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; +x_195 = lean_st_ref_get(x_9, x_175); +x_196 = lean_ctor_get(x_195, 0); +lean_inc(x_196); +x_197 = lean_ctor_get(x_196, 3); +lean_inc(x_197); +lean_dec(x_196); +x_198 = lean_ctor_get_uint8(x_197, sizeof(void*)*1); +lean_dec(x_197); +if (x_198 == 0) { -lean_object* x_117; uint8_t x_118; -x_117 = lean_ctor_get(x_113, 1); -lean_inc(x_117); -lean_dec(x_113); -x_118 = 0; -x_95 = x_118; -x_96 = x_117; -goto block_112; +lean_object* x_199; uint8_t x_200; +x_199 = lean_ctor_get(x_195, 1); +lean_inc(x_199); +lean_dec(x_195); +x_200 = 0; +x_177 = x_200; +x_178 = x_199; +goto block_194; } else { -lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; uint8_t x_123; -x_119 = lean_ctor_get(x_113, 1); -lean_inc(x_119); -lean_dec(x_113); -x_120 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2(x_94, x_4, x_5, x_6, x_7, x_8, x_9, x_119); -x_121 = lean_ctor_get(x_120, 0); -lean_inc(x_121); -x_122 = lean_ctor_get(x_120, 1); -lean_inc(x_122); -lean_dec(x_120); -x_123 = lean_unbox(x_121); -lean_dec(x_121); -x_95 = x_123; -x_96 = x_122; -goto block_112; +lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; uint8_t x_205; +x_201 = lean_ctor_get(x_195, 1); +lean_inc(x_201); +lean_dec(x_195); +x_202 = l___private_Lean_Util_Trace_0__Lean_checkTraceOptionM___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__2(x_176, x_4, x_5, x_6, x_7, x_8, x_9, x_201); +x_203 = lean_ctor_get(x_202, 0); +lean_inc(x_203); +x_204 = lean_ctor_get(x_202, 1); +lean_inc(x_204); +lean_dec(x_202); +x_205 = lean_unbox(x_203); +lean_dec(x_203); +x_177 = x_205; +x_178 = x_204; +goto block_194; } -block_112: +block_194: { -lean_object* x_97; -x_97 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__9; -if (x_95 == 0) +lean_object* x_179; +x_179 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__9; +if (x_177 == 0) { -lean_object* x_98; lean_object* x_99; +lean_object* x_180; lean_object* x_181; lean_dec(x_3); lean_dec(x_1); -x_98 = lean_box(0); -x_99 = lean_apply_8(x_97, x_98, x_4, x_5, x_6, x_7, x_8, x_9, x_96); -return x_99; +x_180 = lean_box(0); +x_181 = lean_apply_8(x_179, x_180, x_4, x_5, x_6, x_7, x_8, x_9, x_178); +return x_181; } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_100 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_100, 0, x_1); -x_101 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1___closed__8; -x_102 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_100); -x_103 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__11; -x_104 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_104, 0, x_102); -lean_ctor_set(x_104, 1, x_103); -x_105 = l_Lean_indentExpr(x_3); -x_106 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_105); -x_107 = lean_alloc_ctor(10, 2, 0); -lean_ctor_set(x_107, 0, x_106); -lean_ctor_set(x_107, 1, x_101); -x_108 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1(x_94, x_107, x_4, x_5, x_6, x_7, x_8, x_9, x_96); -x_109 = lean_ctor_get(x_108, 0); -lean_inc(x_109); -x_110 = lean_ctor_get(x_108, 1); -lean_inc(x_110); -lean_dec(x_108); -x_111 = lean_apply_8(x_97, x_109, x_4, x_5, x_6, x_7, x_8, x_9, x_110); -return x_111; +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; +x_182 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_182, 0, x_1); +x_183 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1___closed__8; +x_184 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_184, 0, x_183); +lean_ctor_set(x_184, 1, x_182); +x_185 = l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__11; +x_186 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_186, 0, x_184); +lean_ctor_set(x_186, 1, x_185); +x_187 = l_Lean_indentExpr(x_3); +x_188 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_188, 0, x_186); +lean_ctor_set(x_188, 1, x_187); +x_189 = lean_alloc_ctor(10, 2, 0); +lean_ctor_set(x_189, 0, x_188); +lean_ctor_set(x_189, 1, x_183); +x_190 = l_Lean_addTrace___at_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___spec__1(x_176, x_189, x_4, x_5, x_6, x_7, x_8, x_9, x_178); +x_191 = lean_ctor_get(x_190, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_190, 1); +lean_inc(x_192); +lean_dec(x_190); +x_193 = lean_apply_8(x_179, x_191, x_4, x_5, x_6, x_7, x_8, x_9, x_192); +return x_193; } } } @@ -1037,7 +1347,7 @@ return x_111; } else { -uint8_t x_124; +uint8_t x_206; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -1047,23 +1357,23 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_124 = !lean_is_exclusive(x_12); -if (x_124 == 0) +x_206 = !lean_is_exclusive(x_12); +if (x_206 == 0) { return x_12; } else { -lean_object* x_125; lean_object* x_126; lean_object* x_127; -x_125 = lean_ctor_get(x_12, 0); -x_126 = lean_ctor_get(x_12, 1); -lean_inc(x_126); -lean_inc(x_125); +lean_object* x_207; lean_object* x_208; lean_object* x_209; +x_207 = lean_ctor_get(x_12, 0); +x_208 = lean_ctor_get(x_12, 1); +lean_inc(x_208); +lean_inc(x_207); lean_dec(x_12); -x_127 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_127, 0, x_125); -lean_ctor_set(x_127, 1, x_126); -return x_127; +x_209 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_209, 0, x_207); +lean_ctor_set(x_209, 1, x_208); +return x_209; } } } @@ -6714,15 +7024,15 @@ x_6 = lean_unsigned_to_nat(1u); x_7 = lean_nat_sub(x_2, x_6); x_8 = lean_array_fget(x_1, x_2); x_9 = lean_array_fget(x_1, x_7); -x_10 = lean_ctor_get(x_8, 0); +x_10 = lean_ctor_get(x_9, 0); lean_inc(x_10); -lean_dec(x_8); +lean_dec(x_9); x_11 = lean_ctor_get(x_10, 3); lean_inc(x_11); lean_dec(x_10); -x_12 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_8, 0); lean_inc(x_12); -lean_dec(x_9); +lean_dec(x_8); x_13 = lean_ctor_get(x_12, 3); lean_inc(x_13); lean_dec(x_12); @@ -11003,6 +11313,14 @@ l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__12 = _init_l_Lean_M lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__12); l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13 = _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13(); lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__13); +l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14 = _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14(); +lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__14); +l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15 = _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15(); +lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__15); +l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16 = _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16(); +lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__16); +l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17 = _init_l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17(); +lean_mark_persistent(l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__17); l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___lambda__1___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___lambda__1___closed__1(); lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___lambda__1___closed__1); l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___spec__1___closed__1(); diff --git a/stage0/stdlib/Lean/Parser/Command.c b/stage0/stdlib/Lean/Parser/Command.c index 47427cf95d..1f3298224c 100644 --- a/stage0/stdlib/Lean/Parser/Command.c +++ b/stage0/stdlib/Lean/Parser/Command.c @@ -87,6 +87,7 @@ static lean_object* l_Lean_Parser_Command_openOnly_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Command_theorem_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_derivingClasses_parenthesizer___closed__5; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12; static lean_object* l_Lean_Parser_Command_initialize___elambda__1___closed__21; LEAN_EXPORT lean_object* l_Lean_Parser_Command_check___elambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_namespace_formatter(lean_object*); @@ -149,7 +150,6 @@ static lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_check_formatter___closed__1; static lean_object* l_Lean_Parser_Command_structCtor_formatter___closed__1; static lean_object* l_Lean_Parser_Command_declaration_formatter___closed__15; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31; static lean_object* l_Lean_Parser_Tactic_set__option___closed__1; static lean_object* l_Lean_Parser_Command_namedPrio___elambda__1___closed__13; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_precheckedQuot_parenthesizer(lean_object*); @@ -203,6 +203,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Command_resolve__name_formatter__ static lean_object* l_Lean_Parser_Command_optDeriving___closed__1; static lean_object* l_Lean_Parser_Command_declId___elambda__1___closed__29; static lean_object* l_Lean_Parser_Term_set__option___closed__2; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31; LEAN_EXPORT lean_object* l_Lean_Parser_Command_reduce_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__14; static lean_object* l_Lean_Parser_Command_attribute_parenthesizer___closed__6; @@ -239,6 +240,7 @@ static lean_object* l_Lean_Parser_Command_genInjectiveTheorems___elambda__1___cl static lean_object* l_Lean_Parser_Command_example___closed__3; lean_object* l_Lean_Parser_Term_attrKind_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_ctor___closed__6; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11; static lean_object* l___regBuiltin_Lean_Parser_Command_attribute_formatter___closed__2; static lean_object* l_Lean_Parser_Command_theorem_formatter___closed__7; static lean_object* l_Lean_Parser_Command_ctor___elambda__1___closed__9; @@ -363,6 +365,7 @@ static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__18; static lean_object* l_Lean_Parser_Command_export___closed__8; static lean_object* l_Lean_Parser_Command_printAxioms___closed__7; static lean_object* l_Lean_Parser_Term_quot___elambda__1___lambda__2___closed__2; +static lean_object* l_Lean_Parser_Command_deriving___closed__12; static lean_object* l_Lean_Parser_Command_optDeclSig___closed__6; static lean_object* l_Lean_Parser_Command_example_formatter___closed__3; static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__3; @@ -439,12 +442,12 @@ static lean_object* l_Lean_Parser_Command_openSimple___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__18; static lean_object* l_Lean_Parser_Command_ctor_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__3; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26; static lean_object* l_Lean_Parser_Command_declSig___elambda__1___closed__15; lean_object* l_Lean_Parser_group_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_declaration_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__1; static lean_object* l_Lean_Parser_Command_end_formatter___closed__3; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11; static lean_object* l_Lean_Parser_Command_def_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__6; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Term_open(lean_object*); @@ -599,13 +602,14 @@ lean_object* l_Lean_Parser_nonReservedSymbolFn(lean_object*, lean_object*, lean_ static lean_object* l_Lean_Parser_Term_precheckedQuot___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_terminationHint1___elambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Command_private_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16; static lean_object* l_Lean_Parser_Command_structInstBinder_formatter___closed__8; static lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__13; +static lean_object* l_Lean_Parser_Command_optNamedPrio___closed__2; static lean_object* l_Lean_Parser_Command_private___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_namespace___closed__8; static lean_object* l_Lean_Parser_Command_declModifiers_formatter___closed__25; static lean_object* l_Lean_Parser_Command_structCtor_formatter___closed__3; +static lean_object* l_Lean_Parser_Command_deriving_formatter___closed__8; lean_object* l_Lean_Parser_ParserState_mkNode(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_open___closed__3; static lean_object* l_Lean_Parser_Command_visibility___closed__1; @@ -651,7 +655,6 @@ static lean_object* l_Lean_Parser_Command_declaration___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_structFields___closed__4; static lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_structSimpleBinder___closed__4; -static lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__18; static lean_object* l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__14; static lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___closed__28; LEAN_EXPORT lean_object* l_Lean_Parser_Command_mutual; @@ -763,6 +766,7 @@ static lean_object* l_Lean_Parser_Command_initialize___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_partial___elambda__1___closed__12; lean_object* l_Lean_Parser_optional_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_check__failure___elambda__1___closed__10; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35; lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_Parser_Command_declId_formatter___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Command_structFields; @@ -820,6 +824,7 @@ static lean_object* l_Lean_Parser_Command_eval_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Command_derivingClasses___closed__12; static lean_object* l_Lean_Parser_Command_print___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__10; +static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__32; static lean_object* l_Lean_Parser_Command_optionValue_formatter___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Command_terminationBy___elambda__1(lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbol_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -878,8 +883,6 @@ static lean_object* l_Lean_Parser_Command_mutual_formatter___closed__4; static lean_object* l_Lean_Parser_Command_terminationHintMany_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Command_end_formatter___closed__4; static lean_object* l_Lean_Parser_Command_optDeriving_formatter___closed__5; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10; static lean_object* l_Lean_Parser_Command_print___elambda__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Command_attribute_parenthesizer___closed__1; lean_object* l_Lean_Parser_checkPrecFn___boxed(lean_object*, lean_object*, lean_object*); @@ -894,6 +897,7 @@ lean_object* l_Lean_PrettyPrinter_Parenthesizer_skip_parenthesizer___boxed(lean_ static lean_object* l_Lean_Parser_Command_optDefDeriving___closed__12; static lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_instance_parenthesizer___closed__8; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19; static lean_object* l_Lean_Parser_Command_initialize___closed__7; static lean_object* l_Lean_Parser_Command_print_formatter___closed__4; static lean_object* l_Lean_Parser_Command_export___elambda__1___closed__17; @@ -914,6 +918,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Command_declaration_parenthesizer static lean_object* l_Lean_Parser_Command_def___elambda__1___closed__18; LEAN_EXPORT lean_object* l_Lean_Parser_Command_structFields___elambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_set__option___elambda__1___closed__9; +static lean_object* l_Lean_Parser_Command_optNamedPrio___closed__3; static lean_object* l_Lean_Parser_Command_export___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_mutual___elambda__1___closed__1; lean_object* l_Lean_Parser_group_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -984,7 +989,6 @@ lean_object* l_Lean_Parser_checkColGeFn___boxed(lean_object*, lean_object*, lean static lean_object* l_Lean_Parser_Command_example___elambda__1___closed__8; lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_print_formatter(lean_object*); -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20; static lean_object* l_Lean_Parser_Command_structSimpleBinder___closed__9; static lean_object* l_Lean_Parser_Command_classTk___closed__5; static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__5; @@ -1028,6 +1032,7 @@ static lean_object* l_Lean_Parser_Command_structSimpleBinder___closed__8; static lean_object* l_Lean_Parser_Command_openHiding___closed__3; static lean_object* l_Lean_Parser_Command_declSig___elambda__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Command_init__quot___elambda__1(lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__20; static lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__1; static lean_object* l_Lean_Parser_Term_set__option_formatter___closed__2; static lean_object* l_Lean_Parser_Command_declSig_parenthesizer___closed__4; @@ -1089,6 +1094,7 @@ static lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__9 static lean_object* l_Lean_Parser_Term_precheckedQuot_parenthesizer___closed__1; lean_object* l_Lean_Parser_Command_docComment_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PrettyPrinter_Parenthesizer_atomic_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Command_instance_parenthesizer___closed__11; static lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__7; static lean_object* l_Lean_Parser_Term_open___closed__1; lean_object* l_Lean_PrettyPrinter_Formatter_checkColGt_formatter___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1109,6 +1115,7 @@ static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__33; static lean_object* l_Lean_Parser_Command_classTk___elambda__1___closed__6; static lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__12; LEAN_EXPORT lean_object* l_Lean_Parser_Command_nonrec; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4; static lean_object* l_Lean_Parser_Command_genInjectiveTheorems_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Command_namespace___closed__2; static lean_object* l_Lean_Parser_Tactic_set__option___elambda__1___closed__2; @@ -1148,6 +1155,7 @@ static lean_object* l_Lean_Parser_Command_check___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_printAxioms___elambda__1___closed__12; static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__13; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Term_quot(lean_object*); +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27; static lean_object* l_Lean_Parser_Command_decreasingBy___elambda__1___closed__13; static lean_object* l___regBuiltin_Lean_Parser_Command_open_formatter___closed__1; static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__19; @@ -1186,6 +1194,7 @@ static lean_object* l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__1 static lean_object* l_Lean_Parser_Command_axiom___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_structSimpleBinder_formatter___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Command_structure; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2; static lean_object* l_Lean_Parser_Command_declModifiers___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Command_constant_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_quot_parenthesizer(lean_object*); @@ -1240,7 +1249,6 @@ static lean_object* l_Lean_Parser_Command_section_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_declValSimple___elambda__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_open_parenthesizer(lean_object*); -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15; static lean_object* l_Lean_Parser_Command_axiom_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_mutual___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_decreasingBy___closed__5; @@ -1305,11 +1313,12 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_in_parenthesizer(lea static lean_object* l_Lean_Parser_Command_structFields_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Command_openSimple_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Command_decreasingBy_formatter___closed__2; -LEAN_EXPORT lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276_(lean_object*); static lean_object* l_Lean_Parser_Command_reduce___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_initialize___closed__4; static lean_object* l_Lean_Parser_Command_def___elambda__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Command_optNamedPrio_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1; static lean_object* l_Lean_Parser_Command_declVal___closed__4; static lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__17; static lean_object* l___regBuiltin_Lean_Parser_Command_in_parenthesizer___closed__2; @@ -1424,6 +1433,7 @@ static lean_object* l_Lean_Parser_Term_precheckedQuot_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__14; static lean_object* l_Lean_Parser_Command_initialize___elambda__1___closed__1; static lean_object* l_Lean_Parser_Command_declModifiers___elambda__2___closed__15; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17; static lean_object* l_Lean_Parser_Command_end___closed__5; static lean_object* l_Lean_Parser_Command_namedPrio_formatter___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Command_decreasingBy_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1450,13 +1460,11 @@ static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__23 static lean_object* l_Lean_Parser_Command_classInductive___closed__5; static lean_object* l_Lean_Parser_Tactic_set__option_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__34; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30; static lean_object* l_Lean_Parser_Command_reduce___elambda__1___closed__13; static lean_object* l_Lean_Parser_Command_open___closed__2; static lean_object* l_Lean_Parser_Command_terminationHint1___elambda__1___closed__2; static lean_object* l_Lean_Parser_Term_open_parenthesizer___closed__6; lean_object* l_Lean_Parser_lookaheadFn(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3; static lean_object* l_Lean_Parser_Term_open___closed__8; static lean_object* l_Lean_Parser_Command_printAxioms___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_structCtor___closed__6; @@ -1470,7 +1478,6 @@ lean_object* l_Lean_Parser_checkLhsPrecFn(lean_object*, lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_Parser_Command_eval_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_attribute___closed__3; static lean_object* l_Lean_Parser_Term_precheckedQuot___elambda__1___closed__5; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5; lean_object* l_Lean_Parser_symbolFn___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_inferMod_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__16; @@ -1511,9 +1518,9 @@ static lean_object* l_Lean_Parser_Command_builtin__initialize_formatter___closed static lean_object* l_Lean_Parser_Command_openDecl___closed__6; static lean_object* l_Lean_Parser_Command_protected_formatter___closed__1; static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__9; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8; static lean_object* l_Lean_Parser_Command_inductive_formatter___closed__11; static lean_object* l_Lean_Parser_Command_def_parenthesizer___closed__7; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18; static lean_object* l_Lean_Parser_Command_export___closed__9; static lean_object* l_Lean_Parser_Command_reduce___elambda__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Command_check__failure___elambda__1(lean_object*, lean_object*); @@ -1559,6 +1566,7 @@ static lean_object* l_Lean_Parser_Command_optionValue_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___closed__26; static lean_object* l_Lean_Parser_Command_derivingClasses___closed__11; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9; static lean_object* l_Lean_Parser_Command_openSimple_formatter___closed__2; static lean_object* l_Lean_Parser_Command_initialize___closed__3; static lean_object* l_Lean_Parser_Command_mutual___closed__11; @@ -1605,7 +1613,6 @@ static lean_object* l_Lean_Parser_Command_inferMod_parenthesizer___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_set__option_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_structFields_parenthesizer___closed__9; static lean_object* l_Lean_Parser_Term_set__option___closed__9; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24; static lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__15; static lean_object* l_Lean_Parser_Command_nonrec___elambda__1___closed__5; static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__29; @@ -1613,7 +1620,6 @@ static lean_object* l_Lean_Parser_Command_initialize___elambda__1___closed__25; LEAN_EXPORT lean_object* l_Lean_Parser_Command_terminationHintMany___lambda__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__3; static lean_object* l_Lean_Parser_Term_precheckedQuot___closed__8; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7; static lean_object* l_Lean_Parser_Command_declModifiers_formatter___closed__7; static lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__6; static lean_object* l_Lean_Parser_Command_end_parenthesizer___closed__4; @@ -1655,7 +1661,6 @@ static lean_object* l_Lean_Parser_Command_eval___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_structSimpleBinder_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__16; static lean_object* l_Lean_Parser_Command_inductive_formatter___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29; static lean_object* l_Lean_Parser_Command_optDeclSig___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_check__failure___closed__4; static lean_object* l_Lean_Parser_Command_private___elambda__1___closed__13; @@ -1696,6 +1701,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Command_example_parenthesizer(lean_object static lean_object* l_Lean_Parser_Command_classTk___elambda__1___closed__1; static lean_object* l_Lean_Parser_Command_variable___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Command_check_formatter___closed__1; +static lean_object* l_Lean_Parser_Command_optNamedPrio_formatter___closed__2; static lean_object* l_Lean_Parser_Command_resolve__name___elambda__1___closed__13; static lean_object* l_Lean_Parser_Command_exit___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_check_parenthesizer___closed__3; @@ -1724,8 +1730,8 @@ static lean_object* l___regBuiltin_Lean_Parser_Command_init__quot_parenthesizer_ static lean_object* l_Lean_Parser_Command_openSimple___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Command_classInductive_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_abbrev_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6; static lean_object* l_Lean_Parser_Command_synth_parenthesizer___closed__4; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25; static lean_object* l_Lean_Parser_Command_openRenamingItem___closed__2; static lean_object* l_Lean_Parser_Command_structExplicitBinder___elambda__1___closed__13; lean_object* l_Lean_Parser_Term_structInst___elambda__1(lean_object*, lean_object*); @@ -1831,6 +1837,8 @@ static lean_object* l_Lean_Parser_Command_genInjectiveTheorems___elambda__1___cl static lean_object* l_Lean_Parser_Command_exit_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__15; static lean_object* l___regBuiltin_Lean_Parser_Command_check__failure_formatter___closed__1; +static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__31; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33; lean_object* l_Lean_Parser_checkNoWsBeforeFn(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_section___closed__2; static lean_object* l_Lean_Parser_Command_openScoped_parenthesizer___closed__2; @@ -1883,7 +1891,6 @@ static lean_object* l_Lean_Parser_Command_declaration_formatter___closed__5; static lean_object* l_Lean_Parser_Command_abbrev___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_export___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_deriving_formatter(lean_object*); -static lean_object* l_Lean_Parser_Command_example___elambda__1___closed__15; static lean_object* l_Lean_Parser_Command_terminationHintMany_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Command_classTk___closed__4; static lean_object* l_Lean_Parser_Command_declValEqns___closed__1; @@ -1928,6 +1935,7 @@ static lean_object* l_Lean_Parser_Command_nonrec___elambda__1___closed__6; static lean_object* l_Lean_Parser_Tactic_set__option_formatter___closed__4; static lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__10; static lean_object* l_Lean_Parser_Command_partial___closed__3; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21; static lean_object* l_Lean_Parser_Command_declaration_parenthesizer___closed__18; static lean_object* l_Lean_Parser_Command_structExplicitBinder___closed__2; static lean_object* l_Lean_Parser_Command_set__option_parenthesizer___closed__6; @@ -1963,6 +1971,7 @@ static lean_object* l_Lean_Parser_Command_init__quot_formatter___closed__3; static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__14; lean_object* l_Lean_Parser_strLit_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__9; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13; static lean_object* l_Lean_Parser_Term_precheckedQuot_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_declModifiers___elambda__2___closed__5; static lean_object* l_Lean_Parser_Command_inductive_formatter___closed__4; @@ -1978,11 +1987,9 @@ static lean_object* l_Lean_Parser_Command_namespace___elambda__1___closed__1; static lean_object* l_Lean_Parser_Command_declaration___closed__11; static lean_object* l_Lean_Parser_Command_eval___closed__8; lean_object* l_Lean_PrettyPrinter_Formatter_many1Unbox_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33; static lean_object* l_Lean_Parser_Command_structExplicitBinder_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Command_declVal___closed__2; static lean_object* l_Lean_Parser_Command_declValSimple_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22; static lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__10; static lean_object* l_Lean_Parser_Command_terminationBy___elambda__1___closed__9; static lean_object* l_Lean_Parser_Command_print___elambda__1___closed__12; @@ -1997,6 +2004,7 @@ LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Command_moduleDoc(lean static lean_object* l___regBuiltin_Lean_Parser_Command_exit_formatter___closed__2; static lean_object* l_Lean_Parser_Command_eval___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_declaration_formatter___closed__22; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23; static lean_object* l_Lean_Parser_Command_terminationBy_formatter___closed__2; static lean_object* l_Lean_Parser_Command_structCtor_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_openHiding_parenthesizer___closed__1; @@ -2025,6 +2033,7 @@ static lean_object* l_Lean_Parser_Command_optDeriving_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Command_export_formatter___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Command_section; static lean_object* l_Lean_Parser_Command_structure_formatter___closed__19; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34; static lean_object* l_Lean_Parser_Command_openOnly_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_declSig___elambda__1___closed__6; @@ -2073,6 +2082,7 @@ static lean_object* l_Lean_Parser_Command_attribute___elambda__1___closed__29; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Tactic_set__option(lean_object*); static lean_object* l_Lean_Parser_Command_theorem___closed__7; static lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__10; +static lean_object* l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__15; static lean_object* l_Lean_Parser_Command_structInstBinder___closed__2; static lean_object* l_Lean_Parser_Command_structureTk_formatter___closed__3; @@ -2154,13 +2164,13 @@ lean_object* l_Lean_Parser_Command_commentBody___elambda__1___boxed(lean_object* static lean_object* l_Lean_Parser_Command_in___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_instance_formatter___closed__8; static lean_object* l_Lean_Parser_Command_private___closed__6; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25; static lean_object* l_Lean_Parser_Term_quot___closed__14; static lean_object* l___regBuiltin_Lean_Parser_Command_init__quot_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Command_namespace_formatter___closed__2; lean_object* l_Lean_PrettyPrinter_Parenthesizer_many1Unbox_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_openRenamingItem_formatter___closed__3; static lean_object* l_Lean_Parser_Command_structInstBinder_parenthesizer___closed__9; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__5; static lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__4; @@ -2201,6 +2211,7 @@ static lean_object* l_Lean_Parser_Command_structure_parenthesizer___closed__12; static lean_object* l_Lean_Parser_Command_noncomputable___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__4; static lean_object* l_Lean_Parser_Command_open___elambda__1___closed__2; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22; static lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Command_theorem___elambda__1(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Command_check_parenthesizer___closed__1; @@ -2268,6 +2279,7 @@ static lean_object* l_Lean_Parser_Command_check___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_eraseAttr___closed__7; static lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__11; static lean_object* l_Lean_Parser_Command_openSimple___closed__5; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14; static lean_object* l_Lean_Parser_Command_openRenamingItem_formatter___closed__5; static lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__5; static lean_object* l_Lean_Parser_Command_structImplicitBinder___elambda__1___closed__12; @@ -2313,6 +2325,7 @@ static lean_object* l_Lean_Parser_Tactic_set__option_formatter___closed__6; static lean_object* l_Lean_Parser_Command_structSimpleBinder___closed__7; static lean_object* l_Lean_Parser_Command_extends___elambda__1___closed__9; static lean_object* l_Lean_Parser_Command_mutual_formatter___closed__10; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29; static lean_object* l_Lean_Parser_Command_declSig_formatter___closed__1; static lean_object* l_Lean_Parser_Command_protected___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Command_genInjectiveTheorems_parenthesizer___closed__2; @@ -2352,7 +2365,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Command_eval_formatter___closed__ static lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_namedPrio___elambda__1___closed__12; static lean_object* l_Lean_Parser_Command_openDecl___closed__3; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34; static lean_object* l_Lean_Parser_Command_declValSimple___closed__2; static lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___closed__13; static lean_object* l_Lean_Parser_Command_printAxioms___closed__8; @@ -2383,6 +2395,7 @@ static lean_object* l_Lean_Parser_Command_unsafe___elambda__1___closed__5; static lean_object* l_Lean_Parser_Command_extends_formatter___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Command_genInjectiveTheorems_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Command_end___elambda__1___closed__13; +static lean_object* l_Lean_Parser_Command_structure_parenthesizer___closed__23; static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__19; static lean_object* l_Lean_Parser_Command_openOnly___closed__5; static lean_object* l_Lean_Parser_Command_declValSimple_formatter___closed__1; @@ -2403,6 +2416,7 @@ static lean_object* l_Lean_Parser_Command_init__quot___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_structExplicitBinder_parenthesizer___closed__10; lean_object* l_Lean_PrettyPrinter_Formatter_withPosition_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Tactic_open_parenthesizer___closed__2; +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__25; LEAN_EXPORT lean_object* l_Lean_Parser_Command_terminationHint(lean_object*); lean_object* l_Lean_Parser_withResultOfFn(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_genInjectiveTheorems___elambda__1___closed__4; @@ -2451,7 +2465,6 @@ static lean_object* l_Lean_Parser_Command_check___elambda__1___closed__4; static lean_object* l_Lean_Parser_Command_decreasingBy___elambda__1___closed__4; static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__39; static lean_object* l_Lean_Parser_Command_structInstBinder___closed__1; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23; static lean_object* l_Lean_Parser_Command_mutual_parenthesizer___closed__13; static lean_object* l_Lean_Parser_Command_mutual___closed__10; static lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__12; @@ -2510,7 +2523,6 @@ static lean_object* l_Lean_Parser_Command_builtin__initialize___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_private; static lean_object* l_Lean_Parser_Command_check___closed__6; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21; static lean_object* l_Lean_Parser_Command_openRenamingItem___elambda__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Command_openDecl_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_decreasingBy___elambda__1___closed__9; @@ -2528,13 +2540,11 @@ static lean_object* l_Lean_Parser_Command_synth___elambda__1___closed__4; static lean_object* l_Lean_Parser_Command_derivingClasses___closed__13; static lean_object* l_Lean_Parser_Command_unsafe_formatter___closed__3; static lean_object* l_Lean_Parser_Command_inductive_parenthesizer___closed__8; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14; static lean_object* l_Lean_Parser_Command_moduleDoc_formatter___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Command_initialize_parenthesizer___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Command_openScoped___elambda__1(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Tactic_open_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__5; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28; lean_object* l_Lean_Parser_ppLine_parenthesizer___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_eraseAttr_formatter___closed__1; static lean_object* l_Lean_Parser_Command_declId_parenthesizer___closed__7; @@ -2588,6 +2598,7 @@ static lean_object* l_Lean_Parser_Command_optDeriving_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_declValEqns_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_genInjectiveTheorems_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Command_mutual_parenthesizer___closed__5; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28; static lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__23; LEAN_EXPORT lean_object* l_Lean_Parser_Command_openRenamingItem; static lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___closed__23; @@ -2605,8 +2616,8 @@ static lean_object* l_Lean_Parser_Term_quot___elambda__1___closed__36; static lean_object* l_Lean_Parser_Command_openOnly___elambda__1___closed__4; lean_object* l_Lean_Parser_ident___elambda__1(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Command_synth_formatter___closed__2; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30; static lean_object* l_Lean_Parser_Command_structure_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17; static lean_object* l_Lean_Parser_Command_declaration_formatter___closed__17; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Command_reduce(lean_object*); lean_object* l_Lean_Parser_Term_doSeq_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2665,6 +2676,7 @@ static lean_object* l_Lean_Parser_Command_builtin__initialize___closed__9; static lean_object* l_Lean_Parser_Command_instance_formatter___closed__1; static lean_object* l_Lean_Parser_Command_init__quot___closed__2; static lean_object* l_Lean_Parser_Command_mutual___closed__2; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15; static lean_object* l_Lean_Parser_Command_terminationBy_formatter___closed__1; static lean_object* l_Lean_Parser_Command_openSimple___closed__4; static lean_object* l_Lean_Parser_Command_instance_parenthesizer___closed__7; @@ -2676,7 +2688,6 @@ static lean_object* l_Lean_Parser_Command_declValSimple_parenthesizer___closed__ static lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__21; static lean_object* l_Lean_Parser_Command_structure_parenthesizer___closed__10; static lean_object* l_Lean_Parser_Command_example_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8; static lean_object* l_Lean_Parser_Command_in___closed__4; static lean_object* l_Lean_Parser_Command_def___closed__12; static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__17; @@ -2689,6 +2700,7 @@ static lean_object* l_Lean_Parser_Command_check_formatter___closed__4; static lean_object* l_Lean_Parser_Command_attribute___closed__1; static lean_object* l_Lean_Parser_Command_structureTk___closed__7; static lean_object* l_Lean_Parser_Command_structImplicitBinder_parenthesizer___closed__1; +static lean_object* l_Lean_Parser_Command_deriving_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Command_initialize_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Command_end___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__4; @@ -2758,9 +2770,9 @@ static lean_object* l_Lean_Parser_Command_constant___closed__3; static lean_object* l_Lean_Parser_Command_openHiding___elambda__1___closed__15; static lean_object* l_Lean_Parser_Command_structInstBinder___closed__11; static lean_object* l_Lean_Parser_Command_classInductive___closed__6; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7; static lean_object* l_Lean_Parser_Command_namespace_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_terminationSuffix_parenthesizer___closed__1; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4; static lean_object* l_Lean_Parser_Command_eraseAttr_formatter___closed__2; static lean_object* l_Lean_Parser_Command_end___elambda__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_genInjectiveTheorems_formatter(lean_object*); @@ -2847,6 +2859,7 @@ static lean_object* l_Lean_Parser_Command_mutual___elambda__1___closed__10; lean_object* l_Lean_Parser_commandParser_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_terminationSuffix_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_namedPrio___elambda__1___closed__16; +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__23; static lean_object* l_Lean_Parser_Command_structCtor___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Command_print_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Command_synth_formatter___closed__1; @@ -2881,7 +2894,6 @@ static lean_object* l_Lean_Parser_Tactic_set__option___elambda__1___closed__4; static lean_object* l_Lean_Parser_Command_structureTk___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_namedPrio___closed__2; static lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__15; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2; static lean_object* l_Lean_Parser_Command_openRenaming___elambda__1___closed__15; static lean_object* l_Lean_Parser_Command_openOnly_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Command_structInstBinder_parenthesizer___closed__8; @@ -2971,6 +2983,7 @@ lean_object* l_Lean_Parser_symbolInfo(lean_object*); static lean_object* l_Lean_Parser_Command_structImplicitBinder_formatter___closed__1; static lean_object* l_Lean_Parser_Term_open___closed__3; static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__17; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18; LEAN_EXPORT lean_object* l_Lean_Parser_Command_classTk; static lean_object* l_Lean_Parser_Command_end___elambda__1___closed__4; static lean_object* l_Lean_Parser_Term_set__option___elambda__1___closed__7; @@ -3014,7 +3027,9 @@ static lean_object* l_Lean_Parser_Command_structure___closed__4; static lean_object* l_Lean_Parser_Command_printAxioms___closed__2; static lean_object* l_Lean_Parser_Command_in___closed__8; static lean_object* l_Lean_Parser_Tactic_open___closed__1; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3; static lean_object* l_Lean_Parser_Command_namespace_parenthesizer___closed__3; +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__21; static lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___closed__21; static lean_object* l_Lean_Parser_Command_builtin__initialize___elambda__1___closed__12; static lean_object* l___regBuiltin_Lean_Parser_Term_set__option_formatter___closed__2; @@ -3043,7 +3058,6 @@ static lean_object* l_Lean_Parser_Term_open___elambda__1___closed__2; static lean_object* l_Lean_Parser_Command_terminationBy___elambda__1___closed__13; static lean_object* l_Lean_Parser_Command_declId___elambda__1___closed__31; static lean_object* l_Lean_Parser_Command_ctor___closed__9; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6; static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__27; static lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__6; static lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__1; @@ -3052,6 +3066,7 @@ static lean_object* l_Lean_Parser_Command_openScoped___elambda__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Command_print_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__11; static lean_object* l_Lean_Parser_Command_declId_parenthesizer___closed__11; +static lean_object* l_Lean_Parser_Command_structure_formatter___closed__23; static lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__7; lean_object* l_Lean_PrettyPrinter_Formatter_withOpen_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_section_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -3062,11 +3077,10 @@ static lean_object* l_Lean_Parser_Command_terminationHintMany___elambda__1___clo static lean_object* l_Lean_Parser_Command_check__failure___elambda__1___closed__4; static lean_object* l_Lean_Parser_Command_openOnly___closed__6; static lean_object* l_Lean_Parser_Command_export___elambda__1___closed__9; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5; static lean_object* l_Lean_Parser_Command_section___closed__7; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9; static lean_object* l_Lean_Parser_Command_noncomputable___elambda__1___closed__8; static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27; LEAN_EXPORT lean_object* l_Lean_Parser_Command_structFields_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_section___elambda__1___closed__10; static lean_object* l_Lean_Parser_Command_classInductive_formatter___closed__1; @@ -3090,6 +3104,7 @@ static lean_object* l_Lean_Parser_Command_example_formatter___closed__2; static lean_object* l_Lean_Parser_Command_def_parenthesizer___closed__9; static lean_object* l_Lean_Parser_Command_terminationBy___closed__5; static lean_object* l_Lean_Parser_Command_initialize_formatter___closed__10; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24; static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_constant___elambda__1___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Command_attribute___elambda__1(lean_object*, lean_object*); @@ -3109,7 +3124,6 @@ static lean_object* l_Lean_Parser_Command_namedPrio_formatter___closed__10; static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__1; static lean_object* l_Lean_Parser_Command_check___closed__3; static lean_object* l_Lean_Parser_Command_mutual_formatter___closed__9; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19; static lean_object* l_Lean_Parser_Command_structInstBinder___elambda__1___closed__10; static lean_object* l_Lean_Parser_Command_synth___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Command_set__option_formatter___closed__1; @@ -3177,6 +3191,7 @@ static lean_object* l_Lean_Parser_Command_check__failure___elambda__1___closed__ static lean_object* l_Lean_Parser_Command_moduleDoc_formatter___closed__2; static lean_object* l_Lean_Parser_Command_def___elambda__1___closed__7; static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__2; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20; static lean_object* l_Lean_Parser_Command_structure_formatter___closed__12; static lean_object* l_Lean_Parser_Command_ctor_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Command_export___elambda__1___closed__2; @@ -3212,12 +3227,13 @@ static lean_object* l_Lean_Parser_Command_namedPrio___elambda__1___closed__19; static lean_object* l_Lean_Parser_Command_print___closed__9; static lean_object* l_Lean_Parser_Command_attribute_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Command_instance___elambda__1___closed__12; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10; static lean_object* l_Lean_Parser_Command_def_formatter___closed__9; static lean_object* l_Lean_Parser_Command_initialize___elambda__1___closed__19; static lean_object* l_Lean_Parser_Command_classInductive___elambda__1___closed__9; static lean_object* l_Lean_Parser_Command_openRenaming___closed__2; static lean_object* l_Lean_Parser_Command_section_formatter___closed__4; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1; static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Command_set__option_formatter___closed__2; static lean_object* l_Lean_Parser_Command_protected_parenthesizer___closed__2; @@ -3419,6 +3435,7 @@ static lean_object* l_Lean_Parser_Command_end___elambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Command_structImplicitBinder_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Command_open(lean_object*); static lean_object* l_Lean_Parser_Command_variable___closed__5; +static lean_object* l_Lean_Parser_Command_optNamedPrio___closed__4; static lean_object* l_Lean_Parser_Command_variable___elambda__1___closed__5; static lean_object* l_Lean_Parser_Command_initialize_formatter___closed__7; static lean_object* l_Lean_Parser_Command_open_formatter___closed__4; @@ -3433,6 +3450,7 @@ static lean_object* l_Lean_Parser_Command_printAxioms___elambda__1___closed__14; static lean_object* l_Lean_Parser_Command_attribute_formatter___closed__10; static lean_object* l_Lean_Parser_Command_ctor___elambda__1___closed__6; static lean_object* l_Lean_Parser_Command_optDeclSig___elambda__1___closed__1; +static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16; lean_object* l_Lean_Parser_Term_typeSpec_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PrettyPrinter_Parenthesizer_withPosition_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_declaration___elambda__1___closed__9; @@ -3796,6 +3814,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Command_mutual_formatter___closed static lean_object* l_Lean_Parser_Command_structSimpleBinder___closed__2; static lean_object* l_Lean_Parser_Command_private_formatter___closed__2; static lean_object* l_Lean_Parser_Command_structFields___elambda__1___closed__5; +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__24; static lean_object* l_Lean_Parser_Command_instance___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Command_declModifiers_parenthesizer___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__6; @@ -3823,7 +3842,6 @@ static lean_object* l_Lean_Parser_Command_check__failure___closed__7; static lean_object* l_Lean_Parser_Command_private_formatter___closed__1; static lean_object* l_Lean_Parser_Term_open___closed__5; static lean_object* l_Lean_Parser_Command_declValSimple___closed__7; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35; static lean_object* l_Lean_Parser_Command_abbrev_parenthesizer___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Command_check__failure_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_mutual___elambda__1___closed__22; @@ -3852,6 +3870,7 @@ static lean_object* l_Lean_Parser_Command_openDecl___closed__2; static lean_object* l_Lean_Parser_Command_abbrev___closed__6; static lean_object* l_Lean_Parser_Command_terminationBy___elambda__1___closed__10; static lean_object* l_Lean_Parser_Command_example___closed__2; +static lean_object* l_Lean_Parser_Command_structure___elambda__1___closed__33; LEAN_EXPORT lean_object* l_Lean_Parser_Command_declValEqns_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_mutual___closed__5; static lean_object* l_Lean_Parser_Tactic_set__option___closed__8; @@ -3936,6 +3955,7 @@ static lean_object* l_Lean_Parser_Command_open___closed__4; static lean_object* l_Lean_Parser_Term_set__option_parenthesizer___closed__1; lean_object* l_Lean_Parser_Term_leftArrow___elambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_attribute___closed__9; +static lean_object* l_Lean_Parser_Command_deriving___elambda__1___closed__22; static lean_object* l_Lean_Parser_Command_optionValue___elambda__1___closed__3; static lean_object* l_Lean_Parser_Command_structCtor___elambda__1___closed__13; static lean_object* l_Lean_Parser_Command_declId_parenthesizer___closed__4; @@ -3966,6 +3986,7 @@ static lean_object* l_Lean_Parser_Command_declModifiers_formatter___closed__17; static lean_object* l_Lean_Parser_Command_openOnly_formatter___closed__5; static lean_object* l_Lean_Parser_Command_partial_formatter___closed__1; static lean_object* l_Lean_Parser_Command_openHiding_formatter___closed__4; +static lean_object* l_Lean_Parser_Command_instance_formatter___closed__11; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Command_genInjectiveTheorems(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Command_initialize_parenthesizer(lean_object*); lean_object* l_Lean_Parser_checkColGtFn___boxed(lean_object*, lean_object*, lean_object*); @@ -3994,7 +4015,6 @@ lean_object* l_Lean_Parser_many1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_structCtor_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_structure_formatter___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Command_eval_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26; static lean_object* l_Lean_Parser_Command_exit___closed__4; static lean_object* l_Lean_Parser_Command_theorem___elambda__1___closed__2; static lean_object* l_Lean_Parser_Term_quot_parenthesizer___closed__1; @@ -4056,7 +4076,6 @@ static lean_object* l_Lean_Parser_Command_inductive___elambda__1___closed__12; LEAN_EXPORT lean_object* l___regBuiltinParser_Lean_Parser_Command_synth(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Command_classTk_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Command_abbrev_parenthesizer___closed__8; -static lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12; static lean_object* l_Lean_Parser_Command_terminationHintMany___closed__3; static lean_object* l_Lean_Parser_Command_initialize_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Command_moduleDoc___elambda__1___closed__8; @@ -8858,8 +8877,44 @@ return x_1; static lean_object* _init_l_Lean_Parser_Command_optNamedPrio___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_namedPrio; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_epsilonInfo; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Command_optNamedPrio___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_terminationHintMany___closed__18; +x_2 = l_Lean_Parser_Command_namedPrio___closed__13; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_optNamedPrio___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optNamedPrio___closed__1; +x_2 = l_Lean_Parser_Command_optNamedPrio___closed__2; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_optNamedPrio___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_optNamedPrio___closed__3; x_2 = l_Lean_Parser_optional(x_1); return x_2; } @@ -8868,7 +8923,7 @@ static lean_object* _init_l_Lean_Parser_Command_optNamedPrio() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_optNamedPrio___closed__1; +x_1 = l_Lean_Parser_Command_optNamedPrio___closed__4; return x_1; } } @@ -15741,28 +15796,37 @@ return x_4; static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__4() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("instance "); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_declId; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_epsilonInfo; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; } } static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__4; -x_2 = l_String_trim(x_1); -return x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_terminationHintMany___closed__18; +x_2 = l_Lean_Parser_Command_declId___closed__6; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__6() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__5; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__4; +x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__5; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__7() { @@ -15770,25 +15834,15 @@ _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_tokenWithAntiquotFn), 3, 1); -lean_closure_set(x_2, 0, x_1); +x_2 = l_Lean_Parser_optional(x_1); return x_2; } } static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__8() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_declId; -x_2 = l_Lean_Parser_optional(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__9() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__8; +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__7; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); x_3 = l_Lean_Parser_Command_theorem___elambda__1___closed__10; @@ -15798,33 +15852,33 @@ lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__10() { +static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_optNamedPrio; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_instance___elambda__1___closed__9; +x_3 = l_Lean_Parser_Command_instance___elambda__1___closed__8; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_4, 0, x_2); lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__11() { +static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__7; -x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__10; +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__9; +x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__9; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__12() { +static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__11() { _start: { lean_object* x_1; @@ -15832,13 +15886,25 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_attrKind___elambda__1), 2, 0 return x_1; } } +static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__11; +x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__10; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__12; -x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__11; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__1; +x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__12; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -15848,9 +15914,9 @@ static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__1; -x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__13; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__13; +x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -15860,8 +15926,8 @@ static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__14; -x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__14; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -15872,11 +15938,9 @@ static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; -x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__15; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); +x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; +x_2 = l_Lean_Parser_Command_optDefDeriving___closed__7; +x_3 = lean_string_append(x_1, x_2); return x_3; } } @@ -15884,17 +15948,7 @@ static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; -x_2 = l_Lean_Parser_Command_instance___elambda__1___closed__5; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Command_instance___elambda__1___closed__18() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__17; +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__16; x_2 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; x_3 = lean_string_append(x_1, x_2); return x_3; @@ -15904,7 +15958,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Command_instance___elambda__1(lean_object _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_3 = l_Lean_Parser_Command_instance___elambda__1___closed__8; +x_3 = l_Lean_Parser_Command_instance___elambda__1___closed__7; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); x_5 = l_Lean_Parser_Command_optNamedPrio; @@ -15974,8 +16028,8 @@ return x_31; else { lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; -x_32 = l_Lean_Parser_Command_instance___elambda__1___closed__5; -x_33 = l_Lean_Parser_Command_instance___elambda__1___closed__18; +x_32 = l_Lean_Parser_Command_optDefDeriving___closed__7; +x_33 = l_Lean_Parser_Command_instance___elambda__1___closed__17; lean_inc(x_1); x_34 = l_Lean_Parser_symbolFnAux(x_32, x_33, x_1, x_17); x_35 = lean_ctor_get(x_34, 4); @@ -16124,7 +16178,7 @@ else lean_object* x_59; uint8_t x_60; lean_object* x_61; lean_dec(x_6); lean_dec(x_4); -x_59 = l_Lean_Parser_Command_instance___elambda__1___closed__16; +x_59 = l_Lean_Parser_Command_instance___elambda__1___closed__15; x_60 = 1; x_61 = l_Lean_Parser_orelseFnCore(x_8, x_59, x_60, x_1, x_2); return x_61; @@ -16135,7 +16189,7 @@ static lean_object* _init_l_Lean_Parser_Command_instance___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__5; +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__7; x_2 = l_Lean_Parser_symbolInfo(x_1); return x_2; } @@ -16144,7 +16198,7 @@ static lean_object* _init_l_Lean_Parser_Command_instance___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__8; +x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__7; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_theorem___closed__3; @@ -16724,9 +16778,10 @@ return x_4; static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__5() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("example "); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__1; +x_2 = l_String_trim(x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__6() { @@ -16734,7 +16789,8 @@ _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_example___elambda__1___closed__5; -x_2 = l_String_trim(x_1); +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); +lean_closure_set(x_2, 0, x_1); return x_2; } } @@ -16743,22 +16799,12 @@ _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_example___elambda__1___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__7; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_tokenWithAntiquotFn), 3, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__9() { +static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -16770,13 +16816,25 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__7; +x_2 = l_Lean_Parser_Command_example___elambda__1___closed__8; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__8; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__2; x_2 = l_Lean_Parser_Command_example___elambda__1___closed__9; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -16786,9 +16844,9 @@ static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__2; -x_2 = l_Lean_Parser_Command_example___elambda__1___closed__10; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__10; +x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -16798,8 +16856,8 @@ static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__11; -x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_2 = l_Lean_Parser_Command_example___elambda__1___closed__11; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -16810,11 +16868,9 @@ static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; -x_2 = l_Lean_Parser_Command_example___elambda__1___closed__12; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); +x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; +x_2 = l_Lean_Parser_Command_example___elambda__1___closed__5; +x_3 = lean_string_append(x_1, x_2); return x_3; } } @@ -16822,17 +16878,7 @@ static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; -x_2 = l_Lean_Parser_Command_example___elambda__1___closed__6; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Command_example___elambda__1___closed__15() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__14; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__13; x_2 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; x_3 = lean_string_append(x_1, x_2); return x_3; @@ -16871,8 +16917,8 @@ x_11 = lean_ctor_get(x_7, 0); lean_inc(x_11); x_12 = lean_array_get_size(x_11); lean_dec(x_11); -x_13 = l_Lean_Parser_Command_example___elambda__1___closed__6; -x_14 = l_Lean_Parser_Command_example___elambda__1___closed__15; +x_13 = l_Lean_Parser_Command_example___elambda__1___closed__5; +x_14 = l_Lean_Parser_Command_example___elambda__1___closed__14; lean_inc(x_1); x_15 = l_Lean_Parser_symbolFnAux(x_13, x_14, x_1, x_7); x_16 = lean_ctor_get(x_15, 4); @@ -16998,7 +17044,7 @@ return x_39; else { lean_object* x_46; uint8_t x_47; lean_object* x_48; -x_46 = l_Lean_Parser_Command_example___elambda__1___closed__13; +x_46 = l_Lean_Parser_Command_example___elambda__1___closed__12; x_47 = 1; x_48 = l_Lean_Parser_orelseFnCore(x_4, x_46, x_47, x_1, x_2); return x_48; @@ -17009,7 +17055,7 @@ static lean_object* _init_l_Lean_Parser_Command_example___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__6; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__5; x_2 = l_Lean_Parser_symbolInfo(x_1); return x_2; } @@ -23360,13 +23406,51 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__6() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declSig___elambda__1___closed__5; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_epsilonInfo; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_declSig___elambda__1___closed__5; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_terminationHintMany___closed__18; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_4, 0, x_3); +lean_closure_set(x_4, 1, x_2); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__6; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__7; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__8; x_2 = l_Lean_Parser_many(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__7() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__10() { _start: { lean_object* x_1; lean_object* x_2; @@ -23375,7 +23459,7 @@ x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__8() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__11() { _start: { lean_object* x_1; @@ -23383,67 +23467,67 @@ x_1 = lean_mk_string(" where "); return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__8; -x_2 = l_String_trim(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__9; -x_2 = l_Lean_Parser_symbolInfo(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__11() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__9; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__12() { _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__11; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_tokenWithAntiquotFn), 3, 1); -lean_closure_set(x_2, 0, x_1); +x_2 = l_String_trim(x_1); return x_2; } } static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__13() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_namedPrio___closed__4; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__10; -x_3 = l_Lean_Parser_orelseInfo(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__12; +x_2 = l_Lean_Parser_symbolInfo(x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__14() { _start: { +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__12; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__14; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_tokenWithAntiquotFn), 3, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_namedPrio___closed__4; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__13; +x_3 = l_Lean_Parser_orelseInfo(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__17() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_namedPrio___elambda__1___closed__18; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__12; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__15; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__15() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__18() { _start: { lean_object* x_1; lean_object* x_2; @@ -23452,11 +23536,11 @@ x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__16() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__15; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__18; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_structFields; @@ -23466,11 +23550,11 @@ x_5 = l_Lean_Parser_andthenInfo(x_2, x_4); return x_5; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__17() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__15; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__18; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); x_3 = l_Lean_Parser_Command_structFields___closed__5; @@ -23480,54 +23564,54 @@ lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__18() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__13; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__16; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__16; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__19; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__19() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__14; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__17; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__17; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__20; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__20() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__18; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__19; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__21; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__22; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__21() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__24() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__20; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__23; x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__22() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__21; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__24; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); x_3 = l_Lean_Parser_Command_optDeriving___closed__5; @@ -23537,90 +23621,54 @@ lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__23() { +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Term_optType; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__22; +x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__25; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_4, 0, x_2); lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__24() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__7; -x_2 = lean_ctor_get(x_1, 1); -lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__23; -x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_4, 0, x_2); -lean_closure_set(x_4, 1, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__25() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__6; -x_2 = lean_ctor_get(x_1, 1); -lean_inc(x_2); -x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__24; -x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_4, 0, x_2); -lean_closure_set(x_4, 1, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__26() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_declId___closed__6; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__25; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__27() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__5; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__26; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__10; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__26; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_4, 0, x_2); +lean_closure_set(x_4, 1, x_3); +return x_4; } } static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__28() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__2; -x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__27; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__9; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__27; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_4, 0, x_2); +lean_closure_set(x_4, 1, x_3); +return x_4; } } static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__28; -x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_1 = l_Lean_Parser_Command_declId___closed__6; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__28; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -23631,7 +23679,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__5; x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__29; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); @@ -23639,20 +23687,56 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__31() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__2; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__30; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__32() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__31; +x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure___elambda__1___closed__33() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_2 = l_Lean_Parser_Command_structure___elambda__1___closed__32; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Parser_Command_structure___elambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__21; +x_3 = l_Lean_Parser_Command_structure___elambda__1___closed__24; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); x_5 = l_Lean_Parser_Term_optType; x_6 = lean_ctor_get(x_5, 1); lean_inc(x_6); -x_7 = l_Lean_Parser_Command_structure___elambda__1___closed__7; +x_7 = l_Lean_Parser_Command_structure___elambda__1___closed__10; x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); -x_9 = l_Lean_Parser_Command_structure___elambda__1___closed__6; +x_9 = l_Lean_Parser_Command_structure___elambda__1___closed__9; x_10 = lean_ctor_get(x_9, 1); lean_inc(x_10); x_11 = l_Lean_Parser_Command_structure___elambda__1___closed__4; @@ -23830,7 +23914,7 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_6); lean_dec(x_4); -x_50 = l_Lean_Parser_Command_structure___elambda__1___closed__30; +x_50 = l_Lean_Parser_Command_structure___elambda__1___closed__33; x_51 = 1; x_52 = l_Lean_Parser_orelseFnCore(x_12, x_50, x_51, x_1, x_2); return x_52; @@ -23855,7 +23939,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__21; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__24; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_optDeriving; @@ -23881,7 +23965,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__7; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__10; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_structure___closed__3; @@ -23893,7 +23977,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__6; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__9; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_structure___closed__4; @@ -26653,11 +26737,23 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_namedPrio_formatter), 5, return x_1; } } +static lean_object* _init_l_Lean_Parser_Command_optNamedPrio_formatter___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__5; +x_2 = l_Lean_Parser_Command_optNamedPrio_formatter___closed__1; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Parser_Command_optNamedPrio_formatter(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_object* x_7; -x_6 = l_Lean_Parser_Command_optNamedPrio_formatter___closed__1; +x_6 = l_Lean_Parser_Command_optNamedPrio_formatter___closed__2; x_7 = l_Lean_Parser_optional_formatter(x_6, x_1, x_2, x_3, x_4, x_5); return x_7; } @@ -26681,7 +26777,7 @@ static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__2() _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__4; +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__6; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -26690,18 +26786,30 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__3() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_abbrev_formatter___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__5; +x_2 = l_Lean_Parser_Command_abbrev_formatter___closed__6; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_instance_formatter___closed__3; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance_formatter___closed__4; x_2 = l_Lean_Parser_Command_theorem_formatter___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -26709,7 +26817,7 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__5() { +static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__6() { _start: { lean_object* x_1; @@ -26717,24 +26825,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_optNamedPrio_formatter), return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_formatter___closed__5; -x_2 = l_Lean_Parser_Command_instance_formatter___closed__4; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_formatter___closed__2; -x_2 = l_Lean_Parser_Command_instance_formatter___closed__6; +x_1 = l_Lean_Parser_Command_instance_formatter___closed__6; +x_2 = l_Lean_Parser_Command_instance_formatter___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -26744,16 +26840,8 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__8() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_attrKind_formatter), 5, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__9() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_formatter___closed__8; +x_1 = l_Lean_Parser_Command_instance_formatter___closed__2; x_2 = l_Lean_Parser_Command_instance_formatter___closed__7; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -26761,13 +26849,33 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_attrKind_formatter), 5, 0); +return x_1; +} +} static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__10() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance_formatter___closed__9; +x_2 = l_Lean_Parser_Command_instance_formatter___closed__8; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_instance_formatter___closed__11() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__1; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_instance_formatter___closed__9; +x_3 = l_Lean_Parser_Command_instance_formatter___closed__10; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -26780,7 +26888,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_instance_formatter___closed__1; -x_7 = l_Lean_Parser_Command_instance_formatter___closed__10; +x_7 = l_Lean_Parser_Command_instance_formatter___closed__11; x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -26877,7 +26985,7 @@ static lean_object* _init_l_Lean_Parser_Command_example_formatter___closed__2() _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__5; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__1; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -28501,14 +28609,26 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__5; +x_2 = l_Lean_Parser_Command_optDeclSig_formatter___closed__2; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__2; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__5; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_many_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__6() { +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__7() { _start: { lean_object* x_1; @@ -28516,22 +28636,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_extends_formatter), 5, 0) return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__8; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); +x_1 = l_Lean_Parser_Command_structure_formatter___closed__7; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -28539,16 +28649,26 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__11; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_namedPrio_formatter___closed__6; -x_2 = l_Lean_Parser_Command_structure_formatter___closed__8; +x_2 = l_Lean_Parser_Command_structure_formatter___closed__9; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_orelse_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__10() { +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__11() { _start: { lean_object* x_1; @@ -28556,17 +28676,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structCtor_formatter), 5, return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__11() { +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__12() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__10; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__11; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__12() { +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__13() { _start: { lean_object* x_1; @@ -28574,23 +28694,11 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structFields_formatter), return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__13() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__11; -x_2 = l_Lean_Parser_Command_structure_formatter___closed__12; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__9; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__12; x_2 = l_Lean_Parser_Command_structure_formatter___closed__13; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -28601,31 +28709,31 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__15() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__14; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__16() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__15; -x_2 = l_Lean_Parser_Command_inductive_formatter___closed__9; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__10; +x_2 = l_Lean_Parser_Command_structure_formatter___closed__14; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__15; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__8; -x_2 = l_Lean_Parser_Command_structure_formatter___closed__16; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__16; +x_2 = l_Lean_Parser_Command_inductive_formatter___closed__9; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -28636,7 +28744,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__18 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__7; +x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__8; x_2 = l_Lean_Parser_Command_structure_formatter___closed__17; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -28648,7 +28756,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__19 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__5; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__8; x_2 = l_Lean_Parser_Command_structure_formatter___closed__18; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -28660,7 +28768,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__20 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_abbrev_formatter___closed__6; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__6; x_2 = l_Lean_Parser_Command_structure_formatter___closed__19; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -28672,7 +28780,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__21 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_formatter___closed__4; +x_1 = l_Lean_Parser_Command_abbrev_formatter___closed__6; x_2 = l_Lean_Parser_Command_structure_formatter___closed__20; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -28683,10 +28791,22 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__22() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__4; +x_2 = l_Lean_Parser_Command_structure_formatter___closed__21; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_formatter___closed__23() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_structure_formatter___closed__21; +x_3 = l_Lean_Parser_Command_structure_formatter___closed__22; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -28699,7 +28819,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_structure_formatter___closed__1; -x_7 = l_Lean_Parser_Command_structure_formatter___closed__22; +x_7 = l_Lean_Parser_Command_structure_formatter___closed__23; x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -31137,11 +31257,23 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_namedPrio_parenthesizer), return x_1; } } +static lean_object* _init_l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__5; +x_2 = l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__1; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Parser_Command_optNamedPrio_parenthesizer(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_object* x_7; -x_6 = l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__1; +x_6 = l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2; x_7 = l_Lean_Parser_optional_parenthesizer(x_6, x_1, x_2, x_3, x_4, x_5); return x_7; } @@ -31165,7 +31297,7 @@ static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed_ _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__4; +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__6; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -31174,18 +31306,30 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__3() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_abbrev_parenthesizer___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__5; +x_2 = l_Lean_Parser_Command_abbrev_parenthesizer___closed__6; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__3; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__4; x_2 = l_Lean_Parser_Command_theorem_parenthesizer___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -31193,7 +31337,7 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__5() { +static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__6() { _start: { lean_object* x_1; @@ -31201,24 +31345,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_optNamedPrio_parenthesize return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__5; -x_2 = l_Lean_Parser_Command_instance_parenthesizer___closed__4; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__2; -x_2 = l_Lean_Parser_Command_instance_parenthesizer___closed__6; +x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__6; +x_2 = l_Lean_Parser_Command_instance_parenthesizer___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -31228,16 +31360,8 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__8() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_attrKind_parenthesizer), 5, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__9() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__8; +x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__2; x_2 = l_Lean_Parser_Command_instance_parenthesizer___closed__7; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -31245,13 +31369,33 @@ lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_attrKind_parenthesizer), 5, 0); +return x_1; +} +} static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__10() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__9; +x_2 = l_Lean_Parser_Command_instance_parenthesizer___closed__8; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_instance_parenthesizer___closed__11() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__1; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_instance_parenthesizer___closed__9; +x_3 = l_Lean_Parser_Command_instance_parenthesizer___closed__10; x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -31264,7 +31408,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_instance_parenthesizer___closed__1; -x_7 = l_Lean_Parser_Command_instance_parenthesizer___closed__10; +x_7 = l_Lean_Parser_Command_instance_parenthesizer___closed__11; x_8 = l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -31361,7 +31505,7 @@ static lean_object* _init_l_Lean_Parser_Command_example_parenthesizer___closed__ _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_example___elambda__1___closed__5; +x_1 = l_Lean_Parser_Command_example___elambda__1___closed__1; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -32985,14 +33129,26 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__5() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__5; +x_2 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__2; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__6() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__2; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__5; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_many_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__6() { +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__7() { _start: { lean_object* x_1; @@ -33000,22 +33156,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_extends_parenthesizer), 5 return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__6; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__8; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__7; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -33023,16 +33169,26 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__11; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_namedPrio_parenthesizer___closed__6; -x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__8; +x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__9; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__10() { +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__11() { _start: { lean_object* x_1; @@ -33040,17 +33196,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structCtor_parenthesizer) return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__11() { +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__12() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__10; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__11; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__12() { +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__13() { _start: { lean_object* x_1; @@ -33058,23 +33214,11 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_structFields_parenthesize return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__13() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__11; -x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__12; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__9; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__12; x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__13; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -33085,31 +33229,31 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__15() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__14; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__16() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__15; -x_2 = l_Lean_Parser_Command_inductive_parenthesizer___closed__9; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__10; +x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__14; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__15; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__8; -x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__16; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__16; +x_2 = l_Lean_Parser_Command_inductive_parenthesizer___closed__9; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -33120,7 +33264,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__7; +x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__8; x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__17; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -33132,7 +33276,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__5; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__8; x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__18; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -33144,7 +33288,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_abbrev_parenthesizer___closed__6; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__6; x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__19; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -33156,7 +33300,7 @@ static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__4; +x_1 = l_Lean_Parser_Command_abbrev_parenthesizer___closed__6; x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__20; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -33167,10 +33311,22 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__22() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__4; +x_2 = l_Lean_Parser_Command_structure_parenthesizer___closed__21; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_structure_parenthesizer___closed__23() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_structure_parenthesizer___closed__21; +x_3 = l_Lean_Parser_Command_structure_parenthesizer___closed__22; x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -33183,7 +33339,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_structure_parenthesizer___closed__1; -x_7 = l_Lean_Parser_Command_structure_parenthesizer___closed__22; +x_7 = l_Lean_Parser_Command_structure_parenthesizer___closed__23; x_8 = l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -33511,7 +33667,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__ _start: { lean_object* x_1; -x_1 = lean_mk_string(" for "); +x_1 = lean_mk_string("instance "); return x_1; } } @@ -33547,84 +33703,73 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__9() { _start: { +lean_object* x_1; +x_1 = lean_mk_string(" for "); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__9; +x_2 = l_String_trim(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__10; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___boxed), 3, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__11; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_tokenWithAntiquotFn), 3, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__13() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_declId___elambda__1___closed__16; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_deriving___elambda__1___closed__8; +x_3 = l_Lean_Parser_Command_deriving___elambda__1___closed__12; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_4, 0, x_3); lean_closure_set(x_4, 1, x_2); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__10() { +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_derivingClasses; x_2 = lean_ctor_get(x_1, 1); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_deriving___elambda__1___closed__9; +x_3 = l_Lean_Parser_Command_deriving___elambda__1___closed__13; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_4, 0, x_2); lean_closure_set(x_4, 1, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__11() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___elambda__1___closed__7; -x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__10; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDefDeriving___closed__5; -x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__11; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__13() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; -x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__12; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__14() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__13; -x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; -x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__8; x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__14; x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); lean_closure_set(x_3, 0, x_1); @@ -33636,9 +33781,11 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; -x_2 = l_Lean_Parser_Command_optDefDeriving___closed__2; -x_3 = lean_string_append(x_1, x_2); +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__5; +x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__15; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); return x_3; } } @@ -33646,13 +33793,59 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__16; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; +x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__16; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__18() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__17; +x_2 = l_Lean_Parser_Term_quot___elambda__1___closed__35; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__19() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_quot___elambda__1___closed__33; +x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__18; +x_3 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn), 4, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__20() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; +x_2 = l_Lean_Parser_Command_optDefDeriving___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__21() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__20; x_2 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__18() { +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -33662,11 +33855,31 @@ x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__19() { +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__18; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__22; +x_2 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__24() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; +x_2 = l_Lean_Parser_Command_deriving___elambda__1___closed__10; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___elambda__1___closed__25() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__24; x_2 = l_Lean_Parser_Term_quot___elambda__1___lambda__3___closed__6; x_3 = lean_string_append(x_1, x_2); return x_3; @@ -33714,7 +33927,7 @@ lean_inc(x_15); x_16 = lean_array_get_size(x_15); lean_dec(x_15); x_17 = l_Lean_Parser_Command_optDefDeriving___closed__2; -x_18 = l_Lean_Parser_Command_deriving___elambda__1___closed__17; +x_18 = l_Lean_Parser_Command_deriving___elambda__1___closed__21; lean_inc(x_1); x_19 = l_Lean_Parser_symbolFnAux(x_17, x_18, x_1, x_11); x_20 = lean_ctor_get(x_19, 4); @@ -33805,8 +34018,8 @@ return x_36; else { lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; -x_37 = l_Lean_Parser_Command_instance___elambda__1___closed__5; -x_38 = l_Lean_Parser_Command_instance___elambda__1___closed__18; +x_37 = l_Lean_Parser_Command_deriving___elambda__1___closed__6; +x_38 = l_Lean_Parser_Command_deriving___elambda__1___closed__23; lean_inc(x_1); x_39 = l_Lean_Parser_symbolFnAux(x_37, x_38, x_1, x_29); x_40 = lean_ctor_get(x_39, 4); @@ -33873,8 +34086,8 @@ goto block_28; else { lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; -x_48 = l_Lean_Parser_Command_deriving___elambda__1___closed__6; -x_49 = l_Lean_Parser_Command_deriving___elambda__1___closed__19; +x_48 = l_Lean_Parser_Command_deriving___elambda__1___closed__10; +x_49 = l_Lean_Parser_Command_deriving___elambda__1___closed__25; lean_inc(x_1); x_50 = l_Lean_Parser_symbolFnAux(x_48, x_49, x_1, x_45); x_51 = lean_ctor_get(x_50, 4); @@ -33941,7 +34154,7 @@ else lean_object* x_74; uint8_t x_75; lean_object* x_76; lean_dec(x_6); lean_dec(x_4); -x_74 = l_Lean_Parser_Command_deriving___elambda__1___closed__15; +x_74 = l_Lean_Parser_Command_deriving___elambda__1___closed__19; x_75 = 1; x_76 = l_Lean_Parser_orelseFnCore(x_8, x_74, x_75, x_1, x_2); return x_76; @@ -33960,42 +34173,41 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_deriving___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_declId___elambda__1___closed__16; -x_2 = lean_ctor_get(x_1, 0); -lean_inc(x_2); -x_3 = l_Lean_Parser_Command_deriving___closed__1; -x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); -return x_4; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__10; +x_2 = l_Lean_Parser_symbolInfo(x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Command_deriving___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Command_derivingClasses; +x_1 = l_Lean_Parser_Command_declId___elambda__1___closed__16; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l_Lean_Parser_Command_deriving___closed__2; -x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); return x_4; } } static lean_object* _init_l_Lean_Parser_Command_deriving___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance___closed__1; -x_2 = l_Lean_Parser_Command_deriving___closed__3; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_derivingClasses; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_deriving___closed__3; +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +return x_4; } } static lean_object* _init_l_Lean_Parser_Command_deriving___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDefDeriving___closed__3; +x_1 = l_Lean_Parser_Command_deriving___closed__1; x_2 = l_Lean_Parser_Command_deriving___closed__4; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; @@ -34005,9 +34217,9 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; +x_1 = l_Lean_Parser_Command_optDefDeriving___closed__3; x_2 = l_Lean_Parser_Command_deriving___closed__5; -x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } } @@ -34015,9 +34227,9 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___closed__6; -x_2 = l_Lean_Parser_epsilonInfo; -x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; +x_2 = l_Lean_Parser_Command_deriving___closed__6; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); return x_3; } } @@ -34025,8 +34237,8 @@ static lean_object* _init_l_Lean_Parser_Command_deriving___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_epsilonInfo; -x_2 = l_Lean_Parser_Command_deriving___closed__7; +x_1 = l_Lean_Parser_Command_deriving___closed__7; +x_2 = l_Lean_Parser_epsilonInfo; x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); return x_3; } @@ -34034,16 +34246,26 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_deriving___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Command_deriving___closed__8; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__4; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Lean_Parser_Command_deriving___closed__8; +x_3 = l_Lean_Parser_Command_deriving___closed__9; x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); return x_4; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___closed__10() { +static lean_object* _init_l_Lean_Parser_Command_deriving___closed__11() { _start: { lean_object* x_1; @@ -34051,12 +34273,12 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_deriving___elambda__1), 2 return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_deriving___closed__11() { +static lean_object* _init_l_Lean_Parser_Command_deriving___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving___closed__9; -x_2 = l_Lean_Parser_Command_deriving___closed__10; +x_1 = l_Lean_Parser_Command_deriving___closed__10; +x_2 = l_Lean_Parser_Command_deriving___closed__11; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -34067,7 +34289,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Command_deriving___closed__11; +x_1 = l_Lean_Parser_Command_deriving___closed__12; return x_1; } } @@ -34112,21 +34334,19 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__3() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving_formatter___closed__2; -x_2 = l_Lean_Parser_Command_declId_formatter___closed__5; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__9; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDeriving_formatter___closed__2; -x_2 = l_Lean_Parser_Command_deriving_formatter___closed__3; +x_1 = l_Lean_Parser_Command_deriving_formatter___closed__3; +x_2 = l_Lean_Parser_Command_declId_formatter___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -34137,7 +34357,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__5() _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_formatter___closed__2; +x_1 = l_Lean_Parser_Command_optDeriving_formatter___closed__2; x_2 = l_Lean_Parser_Command_deriving_formatter___closed__4; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -34149,7 +34369,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__6() _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDefDeriving_formatter___closed__1; +x_1 = l_Lean_Parser_Command_deriving_formatter___closed__2; x_2 = l_Lean_Parser_Command_deriving_formatter___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -34160,10 +34380,22 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDefDeriving_formatter___closed__1; +x_2 = l_Lean_Parser_Command_deriving_formatter___closed__6; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving_formatter___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_deriving_formatter___closed__6; +x_3 = l_Lean_Parser_Command_deriving_formatter___closed__7; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -34176,7 +34408,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_deriving_formatter___closed__1; -x_7 = l_Lean_Parser_Command_deriving_formatter___closed__7; +x_7 = l_Lean_Parser_Command_deriving_formatter___closed__8; x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -34239,21 +34471,19 @@ return x_2; static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__3() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_deriving_parenthesizer___closed__2; -x_2 = l_Lean_Parser_Command_declId_parenthesizer___closed__5; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__9; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDeriving_parenthesizer___closed__2; -x_2 = l_Lean_Parser_Command_deriving_parenthesizer___closed__3; +x_1 = l_Lean_Parser_Command_deriving_parenthesizer___closed__3; +x_2 = l_Lean_Parser_Command_declId_parenthesizer___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -34264,7 +34494,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_instance_parenthesizer___closed__2; +x_1 = l_Lean_Parser_Command_optDeriving_parenthesizer___closed__2; x_2 = l_Lean_Parser_Command_deriving_parenthesizer___closed__4; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -34276,7 +34506,7 @@ static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Command_optDefDeriving_parenthesizer___closed__1; +x_1 = l_Lean_Parser_Command_deriving_parenthesizer___closed__2; x_2 = l_Lean_Parser_Command_deriving_parenthesizer___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -34287,10 +34517,22 @@ return x_3; static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__7() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_optDefDeriving_parenthesizer___closed__1; +x_2 = l_Lean_Parser_Command_deriving_parenthesizer___closed__6; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Parser_Command_deriving___elambda__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Command_deriving_parenthesizer___closed__6; +x_3 = l_Lean_Parser_Command_deriving_parenthesizer___closed__7; x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -34303,7 +34545,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Command_deriving_parenthesizer___closed__1; -x_7 = l_Lean_Parser_Command_deriving_parenthesizer___closed__7; +x_7 = l_Lean_Parser_Command_deriving_parenthesizer___closed__8; x_8 = l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -36150,7 +36392,7 @@ static lean_object* _init_l_Lean_Parser_Command_variable___elambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_declSig___elambda__1___closed__5; +x_1 = l_Lean_Parser_Command_structure___elambda__1___closed__8; x_2 = l_Lean_Parser_many1(x_1); return x_2; } @@ -36499,7 +36741,7 @@ static lean_object* _init_l_Lean_Parser_Command_variable_formatter___closed__3() _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_optDeclSig_formatter___closed__2; +x_1 = l_Lean_Parser_Command_structure_formatter___closed__5; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_many1_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -36600,7 +36842,7 @@ static lean_object* _init_l_Lean_Parser_Command_variable_parenthesizer___closed_ _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_optDeclSig_parenthesizer___closed__2; +x_1 = l_Lean_Parser_Command_structure_parenthesizer___closed__5; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_many1_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; @@ -54570,7 +54812,7 @@ x_1 = l_Lean_Parser_Command_ctor___closed__2; return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -54580,7 +54822,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2() { _start: { lean_object* x_1; lean_object* x_2; @@ -54590,7 +54832,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3() { _start: { lean_object* x_1; @@ -54598,17 +54840,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declModifiersF_formatter) return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3; +x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5() { _start: { lean_object* x_1; @@ -54616,17 +54858,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declModifiersF_parenthesi return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5; +x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7() { _start: { lean_object* x_1; @@ -54634,17 +54876,17 @@ x_1 = lean_mk_string("nestedDeclModifiers"); return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7; +x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9() { _start: { lean_object* x_1; lean_object* x_2; @@ -54654,7 +54896,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10() { _start: { lean_object* x_1; @@ -54662,17 +54904,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declModifiersT_formatter) return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10; +x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12() { _start: { lean_object* x_1; @@ -54680,17 +54922,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_declModifiersT_parenthesi return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12; +x_1 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -54700,7 +54942,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15() { _start: { lean_object* x_1; lean_object* x_2; @@ -54710,7 +54952,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16() { _start: { lean_object* x_1; lean_object* x_2; @@ -54720,7 +54962,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17() { _start: { lean_object* x_1; lean_object* x_2; @@ -54730,7 +54972,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -54740,7 +54982,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19() { _start: { lean_object* x_1; lean_object* x_2; @@ -54750,7 +54992,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20() { _start: { lean_object* x_1; lean_object* x_2; @@ -54760,7 +55002,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21() { _start: { lean_object* x_1; lean_object* x_2; @@ -54770,7 +55012,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22() { _start: { lean_object* x_1; @@ -54778,17 +55020,17 @@ x_1 = lean_mk_string("declVal"); return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22; +x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24() { _start: { lean_object* x_1; lean_object* x_2; @@ -54798,7 +55040,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25() { _start: { lean_object* x_1; lean_object* x_2; @@ -54808,7 +55050,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26() { _start: { lean_object* x_1; lean_object* x_2; @@ -54818,7 +55060,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -54828,7 +55070,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28() { _start: { lean_object* x_1; lean_object* x_2; @@ -54838,7 +55080,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29() { _start: { lean_object* x_1; lean_object* x_2; @@ -54848,7 +55090,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30() { _start: { lean_object* x_1; lean_object* x_2; @@ -54858,7 +55100,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31() { _start: { lean_object* x_1; @@ -54866,17 +55108,17 @@ x_1 = lean_mk_string("openDecl"); return x_1; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31; +x_2 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33() { _start: { lean_object* x_1; lean_object* x_2; @@ -54886,7 +55128,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34() { _start: { lean_object* x_1; lean_object* x_2; @@ -54896,7 +55138,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35() { +static lean_object* _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35() { _start: { lean_object* x_1; lean_object* x_2; @@ -54906,13 +55148,13 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Parser_parserAliasesRef; -x_3 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1; -x_4 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2; +x_3 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1; +x_4 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2; x_5 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_3, x_4, x_1); if (lean_obj_tag(x_5) == 0) { @@ -54921,7 +55163,7 @@ x_6 = lean_ctor_get(x_5, 1); lean_inc(x_6); lean_dec(x_5); x_7 = l_Lean_PrettyPrinter_Formatter_formatterAliasesRef; -x_8 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4; +x_8 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4; x_9 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_3, x_8, x_6); if (lean_obj_tag(x_9) == 0) { @@ -54930,7 +55172,7 @@ x_10 = lean_ctor_get(x_9, 1); lean_inc(x_10); lean_dec(x_9); x_11 = l_Lean_PrettyPrinter_Parenthesizer_parenthesizerAliasesRef; -x_12 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6; +x_12 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6; x_13 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_3, x_12, x_10); if (lean_obj_tag(x_13) == 0) { @@ -54938,8 +55180,8 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; x_14 = lean_ctor_get(x_13, 1); lean_inc(x_14); lean_dec(x_13); -x_15 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8; -x_16 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9; +x_15 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8; +x_16 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9; x_17 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_15, x_16, x_14); if (lean_obj_tag(x_17) == 0) { @@ -54947,7 +55189,7 @@ lean_object* x_18; lean_object* x_19; lean_object* x_20; x_18 = lean_ctor_get(x_17, 1); lean_inc(x_18); lean_dec(x_17); -x_19 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11; +x_19 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11; x_20 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_15, x_19, x_18); if (lean_obj_tag(x_20) == 0) { @@ -54955,7 +55197,7 @@ lean_object* x_21; lean_object* x_22; lean_object* x_23; x_21 = lean_ctor_get(x_20, 1); lean_inc(x_21); lean_dec(x_20); -x_22 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13; +x_22 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13; x_23 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_15, x_22, x_21); if (lean_obj_tag(x_23) == 0) { @@ -54963,8 +55205,8 @@ lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_24 = lean_ctor_get(x_23, 1); lean_inc(x_24); lean_dec(x_23); -x_25 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14; -x_26 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15; +x_25 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14; +x_26 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15; x_27 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_25, x_26, x_24); if (lean_obj_tag(x_27) == 0) { @@ -54972,7 +55214,7 @@ lean_object* x_28; lean_object* x_29; lean_object* x_30; x_28 = lean_ctor_get(x_27, 1); lean_inc(x_28); lean_dec(x_27); -x_29 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16; +x_29 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16; x_30 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_25, x_29, x_28); if (lean_obj_tag(x_30) == 0) { @@ -54980,7 +55222,7 @@ lean_object* x_31; lean_object* x_32; lean_object* x_33; x_31 = lean_ctor_get(x_30, 1); lean_inc(x_31); lean_dec(x_30); -x_32 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17; +x_32 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17; x_33 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_25, x_32, x_31); if (lean_obj_tag(x_33) == 0) { @@ -54988,8 +55230,8 @@ lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; x_34 = lean_ctor_get(x_33, 1); lean_inc(x_34); lean_dec(x_33); -x_35 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18; -x_36 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19; +x_35 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18; +x_36 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19; x_37 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_35, x_36, x_34); if (lean_obj_tag(x_37) == 0) { @@ -54997,7 +55239,7 @@ lean_object* x_38; lean_object* x_39; lean_object* x_40; x_38 = lean_ctor_get(x_37, 1); lean_inc(x_38); lean_dec(x_37); -x_39 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20; +x_39 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20; x_40 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_35, x_39, x_38); if (lean_obj_tag(x_40) == 0) { @@ -55005,7 +55247,7 @@ lean_object* x_41; lean_object* x_42; lean_object* x_43; x_41 = lean_ctor_get(x_40, 1); lean_inc(x_41); lean_dec(x_40); -x_42 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21; +x_42 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21; x_43 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_35, x_42, x_41); if (lean_obj_tag(x_43) == 0) { @@ -55013,8 +55255,8 @@ lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; x_44 = lean_ctor_get(x_43, 1); lean_inc(x_44); lean_dec(x_43); -x_45 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23; -x_46 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24; +x_45 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23; +x_46 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24; x_47 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_45, x_46, x_44); if (lean_obj_tag(x_47) == 0) { @@ -55022,7 +55264,7 @@ lean_object* x_48; lean_object* x_49; lean_object* x_50; x_48 = lean_ctor_get(x_47, 1); lean_inc(x_48); lean_dec(x_47); -x_49 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25; +x_49 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25; x_50 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_45, x_49, x_48); if (lean_obj_tag(x_50) == 0) { @@ -55030,7 +55272,7 @@ lean_object* x_51; lean_object* x_52; lean_object* x_53; x_51 = lean_ctor_get(x_50, 1); lean_inc(x_51); lean_dec(x_50); -x_52 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26; +x_52 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26; x_53 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_45, x_52, x_51); if (lean_obj_tag(x_53) == 0) { @@ -55038,8 +55280,8 @@ lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; x_54 = lean_ctor_get(x_53, 1); lean_inc(x_54); lean_dec(x_53); -x_55 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27; -x_56 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28; +x_55 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27; +x_56 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28; x_57 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_55, x_56, x_54); if (lean_obj_tag(x_57) == 0) { @@ -55047,7 +55289,7 @@ lean_object* x_58; lean_object* x_59; lean_object* x_60; x_58 = lean_ctor_get(x_57, 1); lean_inc(x_58); lean_dec(x_57); -x_59 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29; +x_59 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29; x_60 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_55, x_59, x_58); if (lean_obj_tag(x_60) == 0) { @@ -55055,7 +55297,7 @@ lean_object* x_61; lean_object* x_62; lean_object* x_63; x_61 = lean_ctor_get(x_60, 1); lean_inc(x_61); lean_dec(x_60); -x_62 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30; +x_62 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30; x_63 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_55, x_62, x_61); if (lean_obj_tag(x_63) == 0) { @@ -55063,8 +55305,8 @@ lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; x_64 = lean_ctor_get(x_63, 1); lean_inc(x_64); lean_dec(x_63); -x_65 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32; -x_66 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33; +x_65 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32; +x_66 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33; x_67 = l_Lean_Parser_registerAliasCore___rarg(x_2, x_65, x_66, x_64); if (lean_obj_tag(x_67) == 0) { @@ -55072,7 +55314,7 @@ lean_object* x_68; lean_object* x_69; lean_object* x_70; x_68 = lean_ctor_get(x_67, 1); lean_inc(x_68); lean_dec(x_67); -x_69 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34; +x_69 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34; x_70 = l_Lean_Parser_registerAliasCore___rarg(x_7, x_65, x_69, x_68); if (lean_obj_tag(x_70) == 0) { @@ -55080,7 +55322,7 @@ lean_object* x_71; lean_object* x_72; lean_object* x_73; x_71 = lean_ctor_get(x_70, 1); lean_inc(x_71); lean_dec(x_70); -x_72 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35; +x_72 = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35; x_73 = l_Lean_Parser_registerAliasCore___rarg(x_11, x_65, x_72, x_71); return x_73; } @@ -58959,6 +59201,12 @@ l_Lean_Parser_Command_namedPrio = _init_l_Lean_Parser_Command_namedPrio(); lean_mark_persistent(l_Lean_Parser_Command_namedPrio); l_Lean_Parser_Command_optNamedPrio___closed__1 = _init_l_Lean_Parser_Command_optNamedPrio___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio___closed__1); +l_Lean_Parser_Command_optNamedPrio___closed__2 = _init_l_Lean_Parser_Command_optNamedPrio___closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio___closed__2); +l_Lean_Parser_Command_optNamedPrio___closed__3 = _init_l_Lean_Parser_Command_optNamedPrio___closed__3(); +lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio___closed__3); +l_Lean_Parser_Command_optNamedPrio___closed__4 = _init_l_Lean_Parser_Command_optNamedPrio___closed__4(); +lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio___closed__4); l_Lean_Parser_Command_optNamedPrio = _init_l_Lean_Parser_Command_optNamedPrio(); lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio); l_Lean_Parser_Command_private___elambda__1___closed__1 = _init_l_Lean_Parser_Command_private___elambda__1___closed__1(); @@ -59849,8 +60097,6 @@ l_Lean_Parser_Command_instance___elambda__1___closed__16 = _init_l_Lean_Parser_C lean_mark_persistent(l_Lean_Parser_Command_instance___elambda__1___closed__16); l_Lean_Parser_Command_instance___elambda__1___closed__17 = _init_l_Lean_Parser_Command_instance___elambda__1___closed__17(); lean_mark_persistent(l_Lean_Parser_Command_instance___elambda__1___closed__17); -l_Lean_Parser_Command_instance___elambda__1___closed__18 = _init_l_Lean_Parser_Command_instance___elambda__1___closed__18(); -lean_mark_persistent(l_Lean_Parser_Command_instance___elambda__1___closed__18); l_Lean_Parser_Command_instance___closed__1 = _init_l_Lean_Parser_Command_instance___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_instance___closed__1); l_Lean_Parser_Command_instance___closed__2 = _init_l_Lean_Parser_Command_instance___closed__2(); @@ -59953,8 +60199,6 @@ l_Lean_Parser_Command_example___elambda__1___closed__13 = _init_l_Lean_Parser_Co lean_mark_persistent(l_Lean_Parser_Command_example___elambda__1___closed__13); l_Lean_Parser_Command_example___elambda__1___closed__14 = _init_l_Lean_Parser_Command_example___elambda__1___closed__14(); lean_mark_persistent(l_Lean_Parser_Command_example___elambda__1___closed__14); -l_Lean_Parser_Command_example___elambda__1___closed__15 = _init_l_Lean_Parser_Command_example___elambda__1___closed__15(); -lean_mark_persistent(l_Lean_Parser_Command_example___elambda__1___closed__15); l_Lean_Parser_Command_example___closed__1 = _init_l_Lean_Parser_Command_example___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_example___closed__1); l_Lean_Parser_Command_example___closed__2 = _init_l_Lean_Parser_Command_example___closed__2(); @@ -60833,6 +61077,12 @@ l_Lean_Parser_Command_structure___elambda__1___closed__29 = _init_l_Lean_Parser_ lean_mark_persistent(l_Lean_Parser_Command_structure___elambda__1___closed__29); l_Lean_Parser_Command_structure___elambda__1___closed__30 = _init_l_Lean_Parser_Command_structure___elambda__1___closed__30(); lean_mark_persistent(l_Lean_Parser_Command_structure___elambda__1___closed__30); +l_Lean_Parser_Command_structure___elambda__1___closed__31 = _init_l_Lean_Parser_Command_structure___elambda__1___closed__31(); +lean_mark_persistent(l_Lean_Parser_Command_structure___elambda__1___closed__31); +l_Lean_Parser_Command_structure___elambda__1___closed__32 = _init_l_Lean_Parser_Command_structure___elambda__1___closed__32(); +lean_mark_persistent(l_Lean_Parser_Command_structure___elambda__1___closed__32); +l_Lean_Parser_Command_structure___elambda__1___closed__33 = _init_l_Lean_Parser_Command_structure___elambda__1___closed__33(); +lean_mark_persistent(l_Lean_Parser_Command_structure___elambda__1___closed__33); l_Lean_Parser_Command_structure___closed__1 = _init_l_Lean_Parser_Command_structure___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_structure___closed__1); l_Lean_Parser_Command_structure___closed__2 = _init_l_Lean_Parser_Command_structure___closed__2(); @@ -61256,6 +61506,8 @@ l_Lean_Parser_Command_namedPrio_formatter___closed__11 = _init_l_Lean_Parser_Com lean_mark_persistent(l_Lean_Parser_Command_namedPrio_formatter___closed__11); l_Lean_Parser_Command_optNamedPrio_formatter___closed__1 = _init_l_Lean_Parser_Command_optNamedPrio_formatter___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio_formatter___closed__1); +l_Lean_Parser_Command_optNamedPrio_formatter___closed__2 = _init_l_Lean_Parser_Command_optNamedPrio_formatter___closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio_formatter___closed__2); l_Lean_Parser_Command_instance_formatter___closed__1 = _init_l_Lean_Parser_Command_instance_formatter___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_instance_formatter___closed__1); l_Lean_Parser_Command_instance_formatter___closed__2 = _init_l_Lean_Parser_Command_instance_formatter___closed__2(); @@ -61276,6 +61528,8 @@ l_Lean_Parser_Command_instance_formatter___closed__9 = _init_l_Lean_Parser_Comma lean_mark_persistent(l_Lean_Parser_Command_instance_formatter___closed__9); l_Lean_Parser_Command_instance_formatter___closed__10 = _init_l_Lean_Parser_Command_instance_formatter___closed__10(); lean_mark_persistent(l_Lean_Parser_Command_instance_formatter___closed__10); +l_Lean_Parser_Command_instance_formatter___closed__11 = _init_l_Lean_Parser_Command_instance_formatter___closed__11(); +lean_mark_persistent(l_Lean_Parser_Command_instance_formatter___closed__11); l_Lean_Parser_Command_axiom_formatter___closed__1 = _init_l_Lean_Parser_Command_axiom_formatter___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_axiom_formatter___closed__1); l_Lean_Parser_Command_axiom_formatter___closed__2 = _init_l_Lean_Parser_Command_axiom_formatter___closed__2(); @@ -61574,6 +61828,8 @@ l_Lean_Parser_Command_structure_formatter___closed__21 = _init_l_Lean_Parser_Com lean_mark_persistent(l_Lean_Parser_Command_structure_formatter___closed__21); l_Lean_Parser_Command_structure_formatter___closed__22 = _init_l_Lean_Parser_Command_structure_formatter___closed__22(); lean_mark_persistent(l_Lean_Parser_Command_structure_formatter___closed__22); +l_Lean_Parser_Command_structure_formatter___closed__23 = _init_l_Lean_Parser_Command_structure_formatter___closed__23(); +lean_mark_persistent(l_Lean_Parser_Command_structure_formatter___closed__23); l_Lean_Parser_Command_declaration_formatter___closed__1 = _init_l_Lean_Parser_Command_declaration_formatter___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_declaration_formatter___closed__1); l_Lean_Parser_Command_declaration_formatter___closed__2 = _init_l_Lean_Parser_Command_declaration_formatter___closed__2(); @@ -61949,6 +62205,8 @@ l_Lean_Parser_Command_namedPrio_parenthesizer___closed__11 = _init_l_Lean_Parser lean_mark_persistent(l_Lean_Parser_Command_namedPrio_parenthesizer___closed__11); l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__1 = _init_l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__1); +l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2 = _init_l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_optNamedPrio_parenthesizer___closed__2); l_Lean_Parser_Command_instance_parenthesizer___closed__1 = _init_l_Lean_Parser_Command_instance_parenthesizer___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_instance_parenthesizer___closed__1); l_Lean_Parser_Command_instance_parenthesizer___closed__2 = _init_l_Lean_Parser_Command_instance_parenthesizer___closed__2(); @@ -61969,6 +62227,8 @@ l_Lean_Parser_Command_instance_parenthesizer___closed__9 = _init_l_Lean_Parser_C lean_mark_persistent(l_Lean_Parser_Command_instance_parenthesizer___closed__9); l_Lean_Parser_Command_instance_parenthesizer___closed__10 = _init_l_Lean_Parser_Command_instance_parenthesizer___closed__10(); lean_mark_persistent(l_Lean_Parser_Command_instance_parenthesizer___closed__10); +l_Lean_Parser_Command_instance_parenthesizer___closed__11 = _init_l_Lean_Parser_Command_instance_parenthesizer___closed__11(); +lean_mark_persistent(l_Lean_Parser_Command_instance_parenthesizer___closed__11); l_Lean_Parser_Command_axiom_parenthesizer___closed__1 = _init_l_Lean_Parser_Command_axiom_parenthesizer___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_axiom_parenthesizer___closed__1); l_Lean_Parser_Command_axiom_parenthesizer___closed__2 = _init_l_Lean_Parser_Command_axiom_parenthesizer___closed__2(); @@ -62267,6 +62527,8 @@ l_Lean_Parser_Command_structure_parenthesizer___closed__21 = _init_l_Lean_Parser lean_mark_persistent(l_Lean_Parser_Command_structure_parenthesizer___closed__21); l_Lean_Parser_Command_structure_parenthesizer___closed__22 = _init_l_Lean_Parser_Command_structure_parenthesizer___closed__22(); lean_mark_persistent(l_Lean_Parser_Command_structure_parenthesizer___closed__22); +l_Lean_Parser_Command_structure_parenthesizer___closed__23 = _init_l_Lean_Parser_Command_structure_parenthesizer___closed__23(); +lean_mark_persistent(l_Lean_Parser_Command_structure_parenthesizer___closed__23); l_Lean_Parser_Command_declaration_parenthesizer___closed__1 = _init_l_Lean_Parser_Command_declaration_parenthesizer___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_declaration_parenthesizer___closed__1); l_Lean_Parser_Command_declaration_parenthesizer___closed__2 = _init_l_Lean_Parser_Command_declaration_parenthesizer___closed__2(); @@ -62358,6 +62620,18 @@ l_Lean_Parser_Command_deriving___elambda__1___closed__18 = _init_l_Lean_Parser_C lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__18); l_Lean_Parser_Command_deriving___elambda__1___closed__19 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__19(); lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__19); +l_Lean_Parser_Command_deriving___elambda__1___closed__20 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__20(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__20); +l_Lean_Parser_Command_deriving___elambda__1___closed__21 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__21(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__21); +l_Lean_Parser_Command_deriving___elambda__1___closed__22 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__22(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__22); +l_Lean_Parser_Command_deriving___elambda__1___closed__23 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__23(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__23); +l_Lean_Parser_Command_deriving___elambda__1___closed__24 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__24(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__24); +l_Lean_Parser_Command_deriving___elambda__1___closed__25 = _init_l_Lean_Parser_Command_deriving___elambda__1___closed__25(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___elambda__1___closed__25); l_Lean_Parser_Command_deriving___closed__1 = _init_l_Lean_Parser_Command_deriving___closed__1(); lean_mark_persistent(l_Lean_Parser_Command_deriving___closed__1); l_Lean_Parser_Command_deriving___closed__2 = _init_l_Lean_Parser_Command_deriving___closed__2(); @@ -62380,6 +62654,8 @@ l_Lean_Parser_Command_deriving___closed__10 = _init_l_Lean_Parser_Command_derivi lean_mark_persistent(l_Lean_Parser_Command_deriving___closed__10); l_Lean_Parser_Command_deriving___closed__11 = _init_l_Lean_Parser_Command_deriving___closed__11(); lean_mark_persistent(l_Lean_Parser_Command_deriving___closed__11); +l_Lean_Parser_Command_deriving___closed__12 = _init_l_Lean_Parser_Command_deriving___closed__12(); +lean_mark_persistent(l_Lean_Parser_Command_deriving___closed__12); l_Lean_Parser_Command_deriving = _init_l_Lean_Parser_Command_deriving(); lean_mark_persistent(l_Lean_Parser_Command_deriving); res = l___regBuiltinParser_Lean_Parser_Command_deriving(lean_io_mk_world()); @@ -62399,6 +62675,8 @@ l_Lean_Parser_Command_deriving_formatter___closed__6 = _init_l_Lean_Parser_Comma lean_mark_persistent(l_Lean_Parser_Command_deriving_formatter___closed__6); l_Lean_Parser_Command_deriving_formatter___closed__7 = _init_l_Lean_Parser_Command_deriving_formatter___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_deriving_formatter___closed__7); +l_Lean_Parser_Command_deriving_formatter___closed__8 = _init_l_Lean_Parser_Command_deriving_formatter___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_deriving_formatter___closed__8); l___regBuiltin_Lean_Parser_Command_deriving_formatter___closed__1 = _init_l___regBuiltin_Lean_Parser_Command_deriving_formatter___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Command_deriving_formatter___closed__1); l___regBuiltin_Lean_Parser_Command_deriving_formatter___closed__2 = _init_l___regBuiltin_Lean_Parser_Command_deriving_formatter___closed__2(); @@ -62420,6 +62698,8 @@ l_Lean_Parser_Command_deriving_parenthesizer___closed__6 = _init_l_Lean_Parser_C lean_mark_persistent(l_Lean_Parser_Command_deriving_parenthesizer___closed__6); l_Lean_Parser_Command_deriving_parenthesizer___closed__7 = _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__7(); lean_mark_persistent(l_Lean_Parser_Command_deriving_parenthesizer___closed__7); +l_Lean_Parser_Command_deriving_parenthesizer___closed__8 = _init_l_Lean_Parser_Command_deriving_parenthesizer___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_deriving_parenthesizer___closed__8); l___regBuiltin_Lean_Parser_Command_deriving_parenthesizer___closed__1 = _init_l___regBuiltin_Lean_Parser_Command_deriving_parenthesizer___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Command_deriving_parenthesizer___closed__1); l___regBuiltin_Lean_Parser_Command_deriving_parenthesizer___closed__2 = _init_l___regBuiltin_Lean_Parser_Command_deriving_parenthesizer___closed__2(); @@ -65183,77 +65463,77 @@ l_Lean_Parser_Command_declModifiersF = _init_l_Lean_Parser_Command_declModifiers lean_mark_persistent(l_Lean_Parser_Command_declModifiersF); l_Lean_Parser_Command_declModifiersT = _init_l_Lean_Parser_Command_declModifiersT(); lean_mark_persistent(l_Lean_Parser_Command_declModifiersT); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__1); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__2); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__3); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__4); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__5); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__6); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__7); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__8); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__9); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__10); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__11); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__12); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__13); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__14); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__15); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__16); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__17); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__18); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__19); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__20); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__21); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__22); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__23); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__24); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__25); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__26); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__27); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__28); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__29); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__30); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__31); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__32); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__33); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__34); -l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35(); -lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254____closed__35); -res = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2254_(lean_io_mk_world()); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__1); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__2); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__3); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__4); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__5); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__6); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__7); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__8); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__9); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__10); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__11); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__12); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__13); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__14); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__15); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__16); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__17); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__18); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__19); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__20); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__21); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__22); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__23); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__24); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__25); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__26); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__27); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__28); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__29); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__30); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__31); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__32); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__33); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__34); +l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35 = _init_l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35(); +lean_mark_persistent(l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276____closed__35); +res = l_Lean_Parser_Command_initFn____x40_Lean_Parser_Command___hyg_2276_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_Parser_Term_open___elambda__1___closed__1 = _init_l_Lean_Parser_Term_open___elambda__1___closed__1(); diff --git a/stage0/stdlib/Lean/PrettyPrinter/Delaborator/Builtins.c b/stage0/stdlib/Lean/PrettyPrinter/Delaborator/Builtins.c index 9540cc1c60..ba94c8e9fe 100644 --- a/stage0/stdlib/Lean/PrettyPrinter/Delaborator/Builtins.c +++ b/stage0/stdlib/Lean/PrettyPrinter/Delaborator/Builtins.c @@ -424,8 +424,7 @@ static lean_object* l_Lean_PrettyPrinter_Delaborator_delabSort___closed__5; static lean_object* l_Lean_PrettyPrinter_Delaborator_delabDo___closed__1; static lean_object* l_Lean_PrettyPrinter_Delaborator_delabProjectionApp___closed__1; static lean_object* l_Array_mapMUnsafe_map___at_Lean_PrettyPrinter_Delaborator_unexpandStructureInstance___spec__5___closed__1; -lean_object* l_List_foldl___at_Array_appendList___spec__1___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unexpandRegularApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_PrettyPrinter_Delaborator_delabSort___closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_PrettyPrinter_Delaborator_unexpandStructureInstance___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1040,7 +1039,7 @@ static lean_object* l_Lean_PrettyPrinter_Delaborator_delabConst___closed__9; static lean_object* l_Lean_PrettyPrinter_Delaborator_delabConst___closed__8; static lean_object* l___regBuiltin_Lean_PrettyPrinter_Delaborator_delabForall___closed__5; static lean_object* l_Lean_PrettyPrinter_Delaborator_delabForall___lambda__2___closed__4; -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_PrettyPrinter_Delaborator_delabLit___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_PrettyPrinter_Delaborator_delabProjectionApp(lean_object*); static lean_object* l___regBuiltin_Lean_PrettyPrinter_Delaborator_delabFVar___closed__9; @@ -3339,79 +3338,94 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_11 = l_Lean_rootNamespace; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; size_t x_22; size_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_10 = lean_st_ref_get(x_8, x_9); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +lean_dec(x_11); lean_inc(x_1); -x_12 = l_Lean_Name_append(x_11, x_1); -x_13 = lean_array_push(x_2, x_12); -x_14 = lean_array_get_size(x_13); -x_15 = lean_usize_of_nat(x_14); -lean_dec(x_14); -x_16 = 0; -x_17 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___closed__1; -x_18 = l_Array_forInUnsafe_loop___at_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___spec__1(x_1, x_17, x_13, x_15, x_16, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_13); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); -lean_dec(x_19); -if (lean_obj_tag(x_20) == 0) -{ -uint8_t x_21; -x_21 = !lean_is_exclusive(x_18); -if (x_21 == 0) -{ -lean_object* x_22; -x_22 = lean_ctor_get(x_18, 0); -lean_dec(x_22); -lean_ctor_set(x_18, 0, x_1); -return x_18; -} -else -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_18, 1); -lean_inc(x_23); -lean_dec(x_18); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_1); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} -} -else -{ -uint8_t x_25; -lean_dec(x_1); -x_25 = !lean_is_exclusive(x_18); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = lean_ctor_get(x_18, 0); -lean_dec(x_26); -x_27 = lean_ctor_get(x_20, 0); +x_14 = l_Lean_getRevAliases(x_13, x_1); +x_15 = l_List_redLength___rarg(x_14); +x_16 = lean_mk_empty_array_with_capacity(x_15); +lean_dec(x_15); +x_17 = l_List_toArrayAux___rarg(x_14, x_16); +x_18 = l_Lean_rootNamespace; +lean_inc(x_1); +x_19 = l_Lean_Name_append(x_18, x_1); +x_20 = lean_array_push(x_17, x_19); +x_21 = lean_array_get_size(x_20); +x_22 = lean_usize_of_nat(x_21); +lean_dec(x_21); +x_23 = 0; +x_24 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___closed__1; +x_25 = l_Array_forInUnsafe_loop___at_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___spec__1(x_1, x_24, x_20, x_22, x_23, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_20); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_26, 0); lean_inc(x_27); -lean_dec(x_20); -lean_ctor_set(x_18, 0, x_27); -return x_18; +lean_dec(x_26); +if (lean_obj_tag(x_27) == 0) +{ +uint8_t x_28; +x_28 = !lean_is_exclusive(x_25); +if (x_28 == 0) +{ +lean_object* x_29; +x_29 = lean_ctor_get(x_25, 0); +lean_dec(x_29); +lean_ctor_set(x_25, 0, x_1); +return x_25; } else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_18, 1); -lean_inc(x_28); -lean_dec(x_18); -x_29 = lean_ctor_get(x_20, 0); -lean_inc(x_29); -lean_dec(x_20); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_28); -return x_30; +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_25, 1); +lean_inc(x_30); +lean_dec(x_25); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_1); +lean_ctor_set(x_31, 1, x_30); +return x_31; +} +} +else +{ +uint8_t x_32; +lean_dec(x_1); +x_32 = !lean_is_exclusive(x_25); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_25, 0); +lean_dec(x_33); +x_34 = lean_ctor_get(x_27, 0); +lean_inc(x_34); +lean_dec(x_27); +lean_ctor_set(x_25, 0, x_34); +return x_25; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_25, 1); +lean_inc(x_35); +lean_dec(x_25); +x_36 = lean_ctor_get(x_27, 0); +lean_inc(x_36); +lean_dec(x_27); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_35); +return x_37; } } } @@ -3446,52 +3460,157 @@ x_13 = lean_unbox(x_12); lean_dec(x_12); if (x_13 == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_object* x_14; lean_object* x_15; lean_object* x_16; x_14 = lean_ctor_get(x_11, 1); lean_inc(x_14); lean_dec(x_11); -x_15 = lean_st_ref_get(x_8, x_14); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -lean_dec(x_16); -lean_inc(x_1); -x_19 = l_Lean_getRevAliases(x_18, x_1); -x_20 = l_Lean_PrettyPrinter_Delaborator_delabSort___closed__12; -x_21 = l_List_foldl___at_Array_appendList___spec__1___rarg(x_20, x_19); -x_22 = lean_box(0); -x_23 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(x_1, x_21, x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +x_15 = lean_box(0); +x_16 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(x_1, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_14); lean_dec(x_8); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_11, 1); +lean_inc(x_17); +lean_dec(x_11); +lean_inc(x_1); +x_18 = l_Lean_resolveGlobalName___at_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal_unresolveNameCore___spec__1(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_20; +x_20 = !lean_is_exclusive(x_18); +if (x_20 == 0) +{ +lean_object* x_21; +x_21 = lean_ctor_get(x_18, 0); +lean_dec(x_21); +lean_ctor_set(x_18, 0, x_1); +return x_18; +} +else +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +lean_dec(x_18); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_1); +lean_ctor_set(x_23, 1, x_22); return x_23; } +} else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = lean_ctor_get(x_11, 1); +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_19, 0); lean_inc(x_24); -lean_dec(x_11); -x_25 = l_Lean_PrettyPrinter_Delaborator_delabSort___closed__12; -x_26 = lean_box(0); -x_27 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(x_1, x_25, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_24); -lean_dec(x_8); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_27; +x_25 = lean_ctor_get(x_19, 1); +lean_inc(x_25); +lean_dec(x_19); +if (lean_obj_tag(x_25) == 0) +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_18); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_18, 0); +lean_dec(x_27); +x_28 = lean_ctor_get(x_24, 0); +lean_inc(x_28); +lean_dec(x_24); +x_29 = lean_name_eq(x_28, x_1); +lean_dec(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = l_Lean_rootNamespace; +x_31 = l_Lean_Name_append(x_30, x_1); +lean_ctor_set(x_18, 0, x_31); +return x_18; +} +else +{ +lean_ctor_set(x_18, 0, x_1); +return x_18; } } else { -uint8_t x_28; +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_18, 1); +lean_inc(x_32); +lean_dec(x_18); +x_33 = lean_ctor_get(x_24, 0); +lean_inc(x_33); +lean_dec(x_24); +x_34 = lean_name_eq(x_33, x_1); +lean_dec(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = l_Lean_rootNamespace; +x_36 = l_Lean_Name_append(x_35, x_1); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_32); +return x_37; +} +else +{ +lean_object* x_38; +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_1); +lean_ctor_set(x_38, 1, x_32); +return x_38; +} +} +} +else +{ +uint8_t x_39; +lean_dec(x_25); +lean_dec(x_24); +x_39 = !lean_is_exclusive(x_18); +if (x_39 == 0) +{ +lean_object* x_40; +x_40 = lean_ctor_get(x_18, 0); +lean_dec(x_40); +lean_ctor_set(x_18, 0, x_1); +return x_18; +} +else +{ +lean_object* x_41; lean_object* x_42; +x_41 = lean_ctor_get(x_18, 1); +lean_inc(x_41); +lean_dec(x_18); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_1); +lean_ctor_set(x_42, 1, x_41); +return x_42; +} +} +} +} +} +else +{ +uint8_t x_43; lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); @@ -3499,23 +3618,23 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_28 = !lean_is_exclusive(x_11); -if (x_28 == 0) +x_43 = !lean_is_exclusive(x_11); +if (x_43 == 0) { return x_11; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_11, 0); -x_30 = lean_ctor_get(x_11, 1); -lean_inc(x_30); -lean_inc(x_29); +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_11, 0); +x_45 = lean_ctor_get(x_11, 1); +lean_inc(x_45); +lean_inc(x_44); lean_dec(x_11); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; } } } @@ -3567,18 +3686,18 @@ lean_dec(x_1); return x_16; } } -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_11; -x_11 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_7); +lean_object* x_10; +x_10 = l_Lean_PrettyPrinter_Delaborator_unresolveNameGlobal___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -return x_11; +lean_dec(x_2); +return x_10; } } LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_PrettyPrinter_Delaborator_delabConst___spec__1(size_t x_1, size_t x_2, lean_object* x_3) { @@ -3643,7 +3762,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabConst___closed__1; -x_3 = lean_unsigned_to_nat(86u); +x_3 = lean_unsigned_to_nat(89u); x_4 = lean_unsigned_to_nat(37u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -9268,7 +9387,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_unexpandRegularApp___closed__1; -x_3 = lean_unsigned_to_nat(189u); +x_3 = lean_unsigned_to_nat(192u); x_4 = lean_unsigned_to_nat(67u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -18741,7 +18860,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabLetFun___lambda__1___closed__1; -x_3 = lean_unsigned_to_nat(416u); +x_3 = lean_unsigned_to_nat(419u); x_4 = lean_unsigned_to_nat(37u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -21949,7 +22068,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabLam___lambda__3___closed__12; -x_3 = lean_unsigned_to_nat(534u); +x_3 = lean_unsigned_to_nat(537u); x_4 = lean_unsigned_to_nat(44u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -24955,7 +25074,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabLetE___closed__1; -x_3 = lean_unsigned_to_nat(571u); +x_3 = lean_unsigned_to_nat(574u); x_4 = lean_unsigned_to_nat(38u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -25709,7 +25828,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabLit___closed__1; -x_3 = lean_unsigned_to_nat(584u); +x_3 = lean_unsigned_to_nat(587u); x_4 = lean_unsigned_to_nat(31u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -26857,7 +26976,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabProj___closed__1; -x_3 = lean_unsigned_to_nat(623u); +x_3 = lean_unsigned_to_nat(626u); x_4 = lean_unsigned_to_nat(38u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -30373,7 +30492,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__1; x_2 = l_Lean_PrettyPrinter_Delaborator_delabDoElems___closed__5; -x_3 = lean_unsigned_to_nat(715u); +x_3 = lean_unsigned_to_nat(718u); x_4 = lean_unsigned_to_nat(40u); x_5 = l_Lean_PrettyPrinter_Delaborator_delabFVar___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); diff --git a/stage0/stdlib/Lean/PrettyPrinter/Formatter.c b/stage0/stdlib/Lean/PrettyPrinter/Formatter.c index 3db19bf15d..a6ea5e467b 100644 --- a/stage0/stdlib/Lean/PrettyPrinter/Formatter.c +++ b/stage0/stdlib/Lean/PrettyPrinter/Formatter.c @@ -6044,8 +6044,6 @@ lean_ctor_set(x_11, 0, x_1); lean_ctor_set(x_11, 1, x_8); lean_ctor_set(x_11, 2, x_10); x_12 = l_Substring_beq(x_11, x_9); -lean_dec(x_9); -lean_dec(x_11); if (x_12 == 0) { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; diff --git a/stage0/stdlib/Lean/Server/AsyncList.c b/stage0/stdlib/Lean/Server/AsyncList.c index ba0753527d..02e81dfe8e 100644 --- a/stage0/stdlib/Lean/Server/AsyncList.c +++ b/stage0/stdlib/Lean/Server/AsyncList.c @@ -766,11 +766,14 @@ return x_18; } else { -lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_object* x_19; lean_object* x_20; x_19 = lean_ctor_get(x_3, 0); lean_inc(x_19); lean_dec(x_3); x_20 = l_IO_AsyncList_waitAll___rarg(x_1, x_2, x_19, x_4); +if (lean_obj_tag(x_20) == 0) +{ +uint8_t x_21; x_21 = !lean_is_exclusive(x_20); if (x_21 == 0) { @@ -799,6 +802,29 @@ lean_ctor_set(x_31, 1, x_27); return x_31; } } +else +{ +uint8_t x_32; +x_32 = !lean_is_exclusive(x_20); +if (x_32 == 0) +{ +return x_20; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_20, 0); +x_34 = lean_ctor_get(x_20, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_20); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} } } LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___rarg___lambda__4(lean_object* x_1, lean_object* x_2) { @@ -878,8 +904,11 @@ return x_14; } else { -lean_object* x_15; uint8_t x_16; +lean_object* x_15; x_15 = l_IO_AsyncList_waitAll___rarg(x_1, x_2, x_6, x_4); +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; x_16 = !lean_is_exclusive(x_15); if (x_16 == 0) { @@ -910,57 +939,108 @@ lean_ctor_set(x_26, 1, x_22); return x_26; } } -} -case 1: +else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_27 = lean_ctor_get(x_3, 0); -lean_inc(x_27); -lean_dec(x_3); -lean_inc(x_1); -x_28 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___rarg___lambda__3), 4, 2); -lean_closure_set(x_28, 0, x_1); -lean_closure_set(x_28, 1, x_2); -x_29 = l_Task_Priority_default; -x_30 = lean_io_bind_task(x_27, x_28, x_29, x_4); -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +uint8_t x_27; +lean_dec(x_5); +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_30, 0); -x_33 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___rarg___lambda__4), 2, 1); -lean_closure_set(x_33, 0, x_1); -x_34 = lean_task_map(x_33, x_32, x_29); -lean_ctor_set(x_30, 0, x_34); -return x_30; +return x_15; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_30, 0); -x_36 = lean_ctor_get(x_30, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_30); +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +case 1: +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_3, 0); +lean_inc(x_31); +lean_dec(x_3); +lean_inc(x_1); +x_32 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___rarg___lambda__3), 4, 2); +lean_closure_set(x_32, 0, x_1); +lean_closure_set(x_32, 1, x_2); +x_33 = l_Task_Priority_default; +x_34 = lean_io_bind_task(x_31, x_32, x_33, x_4); +if (lean_obj_tag(x_34) == 0) +{ +uint8_t x_35; +x_35 = !lean_is_exclusive(x_34); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_34, 0); x_37 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___rarg___lambda__4), 2, 1); lean_closure_set(x_37, 0, x_1); -x_38 = lean_task_map(x_37, x_35, x_29); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_36); -return x_39; +x_38 = lean_task_map(x_37, x_36, x_33); +lean_ctor_set(x_34, 0, x_38); +return x_34; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_34, 0); +x_40 = lean_ctor_get(x_34, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_34); +x_41 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___rarg___lambda__4), 2, 1); +lean_closure_set(x_41, 0, x_1); +x_42 = lean_task_map(x_41, x_39, x_33); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} +else +{ +uint8_t x_44; +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_34); +if (x_44 == 0) +{ +return x_34; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_34, 0); +x_46 = lean_ctor_get(x_34, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_34); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; +} } } default: { -lean_object* x_40; lean_object* x_41; +lean_object* x_48; lean_object* x_49; lean_dec(x_2); lean_dec(x_1); -x_40 = l_IO_AsyncList_waitAll___rarg___closed__1; -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_4); -return x_41; +x_48 = l_IO_AsyncList_waitAll___rarg___closed__1; +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_4); +return x_49; } } } @@ -1012,11 +1092,14 @@ return x_13; } else { -lean_object* x_14; lean_object* x_15; uint8_t x_16; +lean_object* x_14; lean_object* x_15; x_14 = lean_ctor_get(x_3, 0); lean_inc(x_14); lean_dec(x_3); x_15 = l_IO_AsyncList_waitFind_x3f___rarg(x_1, x_2, x_14, x_4); +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; x_16 = !lean_is_exclusive(x_15); if (x_16 == 0) { @@ -1045,6 +1128,29 @@ lean_ctor_set(x_26, 1, x_22); return x_26; } } +else +{ +uint8_t x_27; +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) +{ +return x_15; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} } } static lean_object* _init_l_IO_AsyncList_waitFind_x3f___rarg___closed__1() { @@ -1108,7 +1214,7 @@ return x_13; } case 1: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; x_14 = lean_ctor_get(x_3, 0); lean_inc(x_14); lean_dec(x_3); @@ -1118,6 +1224,9 @@ lean_closure_set(x_15, 0, x_1); lean_closure_set(x_15, 1, x_2); x_16 = l_Task_Priority_default; x_17 = lean_io_bind_task(x_14, x_15, x_16, x_4); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; x_18 = !lean_is_exclusive(x_17); if (x_18 == 0) { @@ -1142,16 +1251,40 @@ lean_ctor_set(x_24, 1, x_22); return x_24; } } +else +{ +uint8_t x_25; +lean_dec(x_2); +x_25 = !lean_is_exclusive(x_17); +if (x_25 == 0) +{ +return x_17; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_17, 0); +x_27 = lean_ctor_get(x_17, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_17); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +} default: { -lean_object* x_25; lean_object* x_26; +lean_object* x_29; lean_object* x_30; lean_dec(x_2); lean_dec(x_1); -x_25 = l_IO_AsyncList_waitFind_x3f___rarg___closed__2; -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_4); -return x_26; +x_29 = l_IO_AsyncList_waitFind_x3f___rarg___closed__2; +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_4); +return x_30; } } } @@ -1186,253 +1319,339 @@ uint8_t x_3; x_3 = !lean_is_exclusive(x_1); if (x_3 == 0) { -lean_object* x_4; lean_object* x_5; uint8_t x_6; -x_4 = lean_ctor_get(x_1, 1); -x_5 = l_IO_AsyncList_updateFinishedPrefix___rarg(x_4, x_2); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_1, 0); +x_5 = lean_ctor_get(x_1, 1); +x_6 = l_IO_AsyncList_updateFinishedPrefix___rarg(x_5, x_2); +if (lean_obj_tag(x_6) == 0) { -lean_object* x_7; uint8_t x_8; -x_7 = lean_ctor_get(x_5, 0); -x_8 = !lean_is_exclusive(x_7); -if (x_8 == 0) +uint8_t x_7; +x_7 = !lean_is_exclusive(x_6); +if (x_7 == 0) { -lean_object* x_9; -x_9 = lean_ctor_get(x_7, 0); -lean_ctor_set(x_1, 1, x_9); -lean_ctor_set(x_7, 0, x_1); -return x_5; -} -else +lean_object* x_8; uint8_t x_9; +x_8 = lean_ctor_get(x_6, 0); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_7, 0); -x_11 = lean_ctor_get(x_7, 1); -lean_inc(x_11); -lean_inc(x_10); -lean_dec(x_7); +lean_object* x_10; +x_10 = lean_ctor_get(x_8, 0); lean_ctor_set(x_1, 1, x_10); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_1); -lean_ctor_set(x_12, 1, x_11); -lean_ctor_set(x_5, 0, x_12); -return x_5; +lean_ctor_set(x_8, 0, x_1); +return x_6; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_8, 0); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_8); +lean_ctor_set(x_1, 1, x_11); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_1); +lean_ctor_set(x_13, 1, x_12); +lean_ctor_set(x_6, 0, x_13); +return x_6; } } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_13 = lean_ctor_get(x_5, 0); -x_14 = lean_ctor_get(x_5, 1); -lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_5); -x_15 = lean_ctor_get(x_13, 0); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_14 = lean_ctor_get(x_6, 0); +x_15 = lean_ctor_get(x_6, 1); lean_inc(x_15); -x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_6); +x_16 = lean_ctor_get(x_14, 0); lean_inc(x_16); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - lean_ctor_release(x_13, 1); - x_17 = x_13; +x_17 = lean_ctor_get(x_14, 1); +lean_inc(x_17); +if (lean_is_exclusive(x_14)) { + lean_ctor_release(x_14, 0); + lean_ctor_release(x_14, 1); + x_18 = x_14; } else { - lean_dec_ref(x_13); - x_17 = lean_box(0); + lean_dec_ref(x_14); + x_18 = lean_box(0); } -lean_ctor_set(x_1, 1, x_15); -if (lean_is_scalar(x_17)) { - x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1, 1, x_16); +if (lean_is_scalar(x_18)) { + x_19 = lean_alloc_ctor(0, 2, 0); } else { - x_18 = x_17; + x_19 = x_18; } -lean_ctor_set(x_18, 0, x_1); -lean_ctor_set(x_18, 1, x_16); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); -return x_19; +lean_ctor_set(x_19, 0, x_1); +lean_ctor_set(x_19, 1, x_17); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_15); +return x_20; } } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_20 = lean_ctor_get(x_1, 0); -x_21 = lean_ctor_get(x_1, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_1); -x_22 = l_IO_AsyncList_updateFinishedPrefix___rarg(x_21, x_2); -x_23 = lean_ctor_get(x_22, 0); +uint8_t x_21; +lean_free_object(x_1); +lean_dec(x_4); +x_21 = !lean_is_exclusive(x_6); +if (x_21 == 0) +{ +return x_6; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_6, 0); +x_23 = lean_ctor_get(x_6, 1); lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -if (lean_is_exclusive(x_22)) { - lean_ctor_release(x_22, 0); - lean_ctor_release(x_22, 1); - x_25 = x_22; -} else { - lean_dec_ref(x_22); - x_25 = lean_box(0); +lean_inc(x_22); +lean_dec(x_6); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; } -x_26 = lean_ctor_get(x_23, 0); +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_1, 0); +x_26 = lean_ctor_get(x_1, 1); lean_inc(x_26); -x_27 = lean_ctor_get(x_23, 1); -lean_inc(x_27); -if (lean_is_exclusive(x_23)) { - lean_ctor_release(x_23, 0); - lean_ctor_release(x_23, 1); - x_28 = x_23; +lean_inc(x_25); +lean_dec(x_1); +x_27 = l_IO_AsyncList_updateFinishedPrefix___rarg(x_26, x_2); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +if (lean_is_exclusive(x_27)) { + lean_ctor_release(x_27, 0); + lean_ctor_release(x_27, 1); + x_30 = x_27; } else { - lean_dec_ref(x_23); - x_28 = lean_box(0); + lean_dec_ref(x_27); + x_30 = lean_box(0); } -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_20); -lean_ctor_set(x_29, 1, x_26); -if (lean_is_scalar(x_28)) { - x_30 = lean_alloc_ctor(0, 2, 0); +x_31 = lean_ctor_get(x_28, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_28, 1); +lean_inc(x_32); +if (lean_is_exclusive(x_28)) { + lean_ctor_release(x_28, 0); + lean_ctor_release(x_28, 1); + x_33 = x_28; } else { - x_30 = x_28; + lean_dec_ref(x_28); + x_33 = lean_box(0); } -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_27); -if (lean_is_scalar(x_25)) { - x_31 = lean_alloc_ctor(0, 2, 0); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_25); +lean_ctor_set(x_34, 1, x_31); +if (lean_is_scalar(x_33)) { + x_35 = lean_alloc_ctor(0, 2, 0); } else { - x_31 = x_25; + x_35 = x_33; +} +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_32); +if (lean_is_scalar(x_30)) { + x_36 = lean_alloc_ctor(0, 2, 0); +} else { + x_36 = x_30; +} +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_29); +return x_36; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_25); +x_37 = lean_ctor_get(x_27, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_27, 1); +lean_inc(x_38); +if (lean_is_exclusive(x_27)) { + lean_ctor_release(x_27, 0); + lean_ctor_release(x_27, 1); + x_39 = x_27; +} else { + lean_dec_ref(x_27); + x_39 = lean_box(0); +} +if (lean_is_scalar(x_39)) { + x_40 = lean_alloc_ctor(1, 2, 0); +} else { + x_40 = x_39; +} +lean_ctor_set(x_40, 0, x_37); +lean_ctor_set(x_40, 1, x_38); +return x_40; } -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_24); -return x_31; } } case 1: { -lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_32 = lean_ctor_get(x_1, 0); -lean_inc(x_32); -x_33 = lean_io_has_finished(x_32, x_2); -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_unbox(x_34); -lean_dec(x_34); -if (x_35 == 0) +lean_object* x_41; lean_object* x_42; +x_41 = lean_ctor_get(x_1, 0); +lean_inc(x_41); +x_42 = lean_io_has_finished(x_41, x_2); +if (lean_obj_tag(x_42) == 0) { -uint8_t x_36; -lean_dec(x_32); -x_36 = !lean_is_exclusive(x_33); -if (x_36 == 0) -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_33, 0); -lean_dec(x_37); -x_38 = lean_box(0); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_1); -lean_ctor_set(x_39, 1, x_38); -lean_ctor_set(x_33, 0, x_39); -return x_33; -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_33, 1); -lean_inc(x_40); -lean_dec(x_33); -x_41 = lean_box(0); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_1); -lean_ctor_set(x_42, 1, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_40); -return x_43; -} -} -else -{ -uint8_t x_44; -lean_dec(x_1); -x_44 = !lean_is_exclusive(x_33); +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_unbox(x_43); +lean_dec(x_43); if (x_44 == 0) { -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_33, 1); -x_46 = lean_ctor_get(x_33, 0); +uint8_t x_45; +lean_dec(x_41); +x_45 = !lean_is_exclusive(x_42); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_42, 0); lean_dec(x_46); -x_47 = lean_task_get_own(x_32); -if (lean_obj_tag(x_47) == 0) +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_1); +lean_ctor_set(x_48, 1, x_47); +lean_ctor_set(x_42, 0, x_48); +return x_42; +} +else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -lean_dec(x_47); -x_49 = lean_box(2); -x_50 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_50, 0, x_48); +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = lean_ctor_get(x_42, 1); +lean_inc(x_49); +lean_dec(x_42); +x_50 = lean_box(0); x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 0, x_1); lean_ctor_set(x_51, 1, x_50); -lean_ctor_set(x_33, 0, x_51); -return x_33; -} -else -{ -lean_object* x_52; -lean_free_object(x_33); -x_52 = lean_ctor_get(x_47, 0); -lean_inc(x_52); -lean_dec(x_47); -x_1 = x_52; -x_2 = x_45; -goto _start; +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_49); +return x_52; } } else { -lean_object* x_54; lean_object* x_55; -x_54 = lean_ctor_get(x_33, 1); -lean_inc(x_54); -lean_dec(x_33); -x_55 = lean_task_get_own(x_32); -if (lean_obj_tag(x_55) == 0) +uint8_t x_53; +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_42); +if (x_53 == 0) { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_56 = lean_ctor_get(x_55, 0); -lean_inc(x_56); +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_42, 1); +x_55 = lean_ctor_get(x_42, 0); lean_dec(x_55); -x_57 = lean_box(2); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_56); -x_59 = lean_alloc_ctor(0, 2, 0); +x_56 = lean_task_get_own(x_41); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +lean_dec(x_56); +x_58 = lean_box(2); +x_59 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_54); -return x_60; +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +lean_ctor_set(x_42, 0, x_60); +return x_42; } else { lean_object* x_61; -x_61 = lean_ctor_get(x_55, 0); +lean_free_object(x_42); +x_61 = lean_ctor_get(x_56, 0); lean_inc(x_61); -lean_dec(x_55); +lean_dec(x_56); x_1 = x_61; x_2 = x_54; goto _start; } } +else +{ +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_42, 1); +lean_inc(x_63); +lean_dec(x_42); +x_64 = lean_task_get_own(x_41); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +lean_dec(x_64); +x_66 = lean_box(2); +x_67 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_67, 0, x_65); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_63); +return x_69; +} +else +{ +lean_object* x_70; +x_70 = lean_ctor_get(x_64, 0); +lean_inc(x_70); +lean_dec(x_64); +x_1 = x_70; +x_2 = x_63; +goto _start; +} +} +} +} +else +{ +uint8_t x_72; +lean_dec(x_41); +lean_dec(x_1); +x_72 = !lean_is_exclusive(x_42); +if (x_72 == 0) +{ +return x_42; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_42, 0); +x_74 = lean_ctor_get(x_42, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_42); +x_75 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +return x_75; +} } } default: { -lean_object* x_63; lean_object* x_64; -x_63 = l_IO_AsyncList_updateFinishedPrefix___rarg___closed__1; -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_63); -lean_ctor_set(x_64, 1, x_2); -return x_64; +lean_object* x_76; lean_object* x_77; +x_76 = l_IO_AsyncList_updateFinishedPrefix___rarg___closed__1; +x_77 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_2); +return x_77; } } } diff --git a/stage0/stdlib/Lean/Server/FileWorker.c b/stage0/stdlib/Lean/Server/FileWorker.c index 18cfea2c75..8f104e5fcc 100644 --- a/stage0/stdlib/Lean/Server/FileWorker.c +++ b/stage0/stdlib/Lean/Server/FileWorker.c @@ -63,7 +63,6 @@ static lean_object* l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__3; LEAN_EXPORT lean_object* l_panic___at_Lean_Server_FileWorker_updateDocument___spec__2(lean_object*); lean_object* l_Lean_Option_get___at_Lean_initFn____x40_Lean_Util_PPExt___hyg_245____spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_compileHeader___lambda__1___closed__4; -extern lean_object* l_Lean_searchPathRef; uint8_t l_Lean_Syntax_structEq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_compileHeader___spec__5(lean_object*, size_t, size_t, lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readLspRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__1___closed__1; @@ -78,7 +77,6 @@ lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_CancelToken_check___at___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_nextCmdSnap___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_RBNode_del___at_Lean_Server_FileWorker_mainLoop___spec__3___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_updateDocument___lambda__1___boxed(lean_object*, lean_object*); -lean_object* l_Lean_getBuiltinSearchPath(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleRpcRelease(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleRpcConnect(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_compileHeader___lambda__1___closed__2; @@ -258,6 +256,7 @@ static lean_object* l_Lean_Server_FileWorker_lakeSetupSearchPath_processStderr__ LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_updatePendingRequests___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_firstFrontendMacroScope; static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__58; +lean_object* lean_get_prefix(lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__55; static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__53; lean_object* l_Lean_FileMap_ofString(lean_object*); @@ -278,6 +277,7 @@ lean_object* l_IO_AsyncList_ofList___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_parseParams___at_Lean_Server_FileWorker_handleRequest___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__42; lean_object* l_Lean_Server_Snapshots_Snapshot_diagnostics(lean_object*); +lean_object* l_Lean_initSearchPath(lean_object*, lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__18; static lean_object* l_Lean_Server_FileWorker_handleRequest___closed__1; lean_object* l_Lean_Server_Snapshots_parseNextCmd(lean_object*, lean_object*, lean_object*); @@ -320,7 +320,6 @@ LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_parseParams___at_Lean_Server_F LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Server_FileWorker_handleRpcRelease___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_unfoldAsync_step___at_Lean_Server_FileWorker_unfoldCmdSnaps___spec__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_initAndRunWorker___closed__3; -lean_object* l_Lean_addSearchPathFromEnv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_updateDocument(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__20; lean_object* l___private_Lean_Data_Lsp_Communication_0__IO_FS_Stream_readLspHeader(lean_object*, lean_object*); @@ -2223,83 +2222,75 @@ lean_dec(x_17); x_87 = lean_ctor_get(x_76, 0); lean_inc(x_87); lean_dec(x_76); -x_88 = l_Lean_getBuiltinSearchPath(x_44); +x_88 = lean_get_prefix(x_44); if (lean_obj_tag(x_88) == 0) { -lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; x_89 = lean_ctor_get(x_88, 0); lean_inc(x_89); x_90 = lean_ctor_get(x_88, 1); lean_inc(x_90); lean_dec(x_88); -x_91 = l_Lean_addSearchPathFromEnv(x_89, x_90); -if (lean_obj_tag(x_91) == 0) +x_91 = lean_ctor_get(x_87, 0); +lean_inc(x_91); +x_92 = l_Lean_initSearchPath(x_89, x_91, x_90); +if (lean_obj_tag(x_92) == 0) { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; -x_92 = lean_ctor_get(x_91, 0); -lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 1); +lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_93 = lean_ctor_get(x_92, 1); lean_inc(x_93); -lean_dec(x_91); -x_94 = lean_ctor_get(x_87, 0); +lean_dec(x_92); +x_94 = lean_ctor_get(x_87, 1); lean_inc(x_94); -x_95 = l_List_appendTR___rarg(x_94, x_92); -x_96 = l_Lean_searchPathRef; -x_97 = lean_st_ref_set(x_96, x_95, x_93); -x_98 = lean_ctor_get(x_97, 1); +lean_dec(x_87); +x_95 = l_List_mapM___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__3(x_94, x_93); +return x_95; +} +else +{ +uint8_t x_96; +lean_dec(x_87); +x_96 = !lean_is_exclusive(x_92); +if (x_96 == 0) +{ +return x_92; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_92, 0); +x_98 = lean_ctor_get(x_92, 1); lean_inc(x_98); -lean_dec(x_97); -x_99 = lean_ctor_get(x_87, 1); -lean_inc(x_99); -lean_dec(x_87); -x_100 = l_List_mapM___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__3(x_99, x_98); -return x_100; -} -else -{ -uint8_t x_101; -lean_dec(x_87); -x_101 = !lean_is_exclusive(x_91); -if (x_101 == 0) -{ -return x_91; -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_102 = lean_ctor_get(x_91, 0); -x_103 = lean_ctor_get(x_91, 1); -lean_inc(x_103); -lean_inc(x_102); -lean_dec(x_91); -x_104 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_104, 0, x_102); -lean_ctor_set(x_104, 1, x_103); -return x_104; +lean_inc(x_97); +lean_dec(x_92); +x_99 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_99, 0, x_97); +lean_ctor_set(x_99, 1, x_98); +return x_99; } } } else { -uint8_t x_105; +uint8_t x_100; lean_dec(x_87); -x_105 = !lean_is_exclusive(x_88); -if (x_105 == 0) +x_100 = !lean_is_exclusive(x_88); +if (x_100 == 0) { return x_88; } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_106 = lean_ctor_get(x_88, 0); -x_107 = lean_ctor_get(x_88, 1); -lean_inc(x_107); -lean_inc(x_106); +lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_101 = lean_ctor_get(x_88, 0); +x_102 = lean_ctor_get(x_88, 1); +lean_inc(x_102); +lean_inc(x_101); lean_dec(x_88); -x_108 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_108, 0, x_106); -lean_ctor_set(x_108, 1, x_107); -return x_108; +x_103 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +return x_103; } } } @@ -2308,199 +2299,191 @@ return x_108; } else { -lean_object* x_109; lean_object* x_110; uint32_t x_111; uint32_t x_112; uint8_t x_113; -x_109 = lean_ctor_get(x_41, 0); -x_110 = lean_ctor_get(x_41, 1); -lean_inc(x_110); -lean_inc(x_109); +lean_object* x_104; lean_object* x_105; uint32_t x_106; uint32_t x_107; uint8_t x_108; +x_104 = lean_ctor_get(x_41, 0); +x_105 = lean_ctor_get(x_41, 1); +lean_inc(x_105); +lean_inc(x_104); lean_dec(x_41); -x_111 = 0; -x_112 = lean_unbox_uint32(x_109); -x_113 = lean_uint32_dec_eq(x_112, x_111); -if (x_113 == 0) +x_106 = 0; +x_107 = lean_unbox_uint32(x_104); +x_108 = lean_uint32_dec_eq(x_107, x_106); +if (x_108 == 0) { -uint32_t x_114; uint32_t x_115; uint8_t x_116; -x_114 = 2; -x_115 = lean_unbox_uint32(x_109); -lean_dec(x_109); -x_116 = lean_uint32_dec_eq(x_115, x_114); -if (x_116 == 0) +uint32_t x_109; uint32_t x_110; uint8_t x_111; +x_109 = 2; +x_110 = lean_unbox_uint32(x_104); +lean_dec(x_104); +x_111 = lean_uint32_dec_eq(x_110, x_109); +if (x_111 == 0) { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; -x_117 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__6; -x_118 = lean_string_append(x_117, x_17); +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_112 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__6; +x_113 = lean_string_append(x_112, x_17); lean_dec(x_17); -x_119 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__7; -x_120 = lean_string_append(x_118, x_119); -x_121 = lean_string_append(x_120, x_36); +x_114 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__7; +x_115 = lean_string_append(x_113, x_114); +x_116 = lean_string_append(x_115, x_36); lean_dec(x_36); -x_122 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; -x_123 = lean_string_append(x_121, x_122); -x_124 = lean_string_append(x_123, x_39); +x_117 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; +x_118 = lean_string_append(x_116, x_117); +x_119 = lean_string_append(x_118, x_39); lean_dec(x_39); -x_125 = lean_string_append(x_124, x_25); -x_126 = l_IO_throwServerError___rarg(x_125, x_110); -return x_126; +x_120 = lean_string_append(x_119, x_25); +x_121 = l_IO_throwServerError___rarg(x_120, x_105); +return x_121; } else { -lean_object* x_127; lean_object* x_128; +lean_object* x_122; lean_object* x_123; lean_dec(x_39); lean_dec(x_36); lean_dec(x_17); -x_127 = lean_box(0); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_110); -return x_128; +x_122 = lean_box(0); +x_123 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_123, 0, x_122); +lean_ctor_set(x_123, 1, x_105); +return x_123; } } else { -lean_object* x_129; lean_object* x_130; lean_object* x_131; -lean_dec(x_109); -x_129 = l_String_split___at_Lean_stringToMessageData___spec__1(x_36); +lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_dec(x_104); +x_124 = l_String_split___at_Lean_stringToMessageData___spec__1(x_36); lean_dec(x_36); -x_130 = l_List_getLast_x21___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__2(x_129); -lean_inc(x_130); -x_131 = l_Lean_Json_parse(x_130); -if (lean_obj_tag(x_131) == 0) +x_125 = l_List_getLast_x21___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__2(x_124); +lean_inc(x_125); +x_126 = l_Lean_Json_parse(x_125); +if (lean_obj_tag(x_126) == 0) { -lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; -lean_dec(x_131); -x_132 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__9; -x_133 = lean_string_append(x_132, x_17); +lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_126); +x_127 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__9; +x_128 = lean_string_append(x_127, x_17); lean_dec(x_17); -x_134 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__10; -x_135 = lean_string_append(x_133, x_134); -x_136 = lean_string_append(x_135, x_130); -lean_dec(x_130); -x_137 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; -x_138 = lean_string_append(x_136, x_137); -x_139 = lean_string_append(x_138, x_39); +x_129 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__10; +x_130 = lean_string_append(x_128, x_129); +x_131 = lean_string_append(x_130, x_125); +lean_dec(x_125); +x_132 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; +x_133 = lean_string_append(x_131, x_132); +x_134 = lean_string_append(x_133, x_39); lean_dec(x_39); -x_140 = lean_string_append(x_139, x_25); -x_141 = l_IO_throwServerError___rarg(x_140, x_110); -return x_141; +x_135 = lean_string_append(x_134, x_25); +x_136 = l_IO_throwServerError___rarg(x_135, x_105); +return x_136; } else { -lean_object* x_142; lean_object* x_143; -x_142 = lean_ctor_get(x_131, 0); -lean_inc(x_142); -lean_dec(x_131); -x_143 = l___private_Lean_Util_Paths_0__Lean_fromJsonLeanPaths____x40_Lean_Util_Paths___hyg_63_(x_142); -lean_dec(x_142); -if (lean_obj_tag(x_143) == 0) +lean_object* x_137; lean_object* x_138; +x_137 = lean_ctor_get(x_126, 0); +lean_inc(x_137); +lean_dec(x_126); +x_138 = l___private_Lean_Util_Paths_0__Lean_fromJsonLeanPaths____x40_Lean_Util_Paths___hyg_63_(x_137); +lean_dec(x_137); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; -lean_dec(x_143); -x_144 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__9; -x_145 = lean_string_append(x_144, x_17); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_138); +x_139 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__9; +x_140 = lean_string_append(x_139, x_17); lean_dec(x_17); -x_146 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__10; -x_147 = lean_string_append(x_145, x_146); -x_148 = lean_string_append(x_147, x_130); -lean_dec(x_130); -x_149 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; -x_150 = lean_string_append(x_148, x_149); -x_151 = lean_string_append(x_150, x_39); +x_141 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__10; +x_142 = lean_string_append(x_140, x_141); +x_143 = lean_string_append(x_142, x_125); +lean_dec(x_125); +x_144 = l_Lean_Server_FileWorker_lakeSetupSearchPath___closed__8; +x_145 = lean_string_append(x_143, x_144); +x_146 = lean_string_append(x_145, x_39); lean_dec(x_39); -x_152 = lean_string_append(x_151, x_25); -x_153 = l_IO_throwServerError___rarg(x_152, x_110); -return x_153; +x_147 = lean_string_append(x_146, x_25); +x_148 = l_IO_throwServerError___rarg(x_147, x_105); +return x_148; } else { -lean_object* x_154; lean_object* x_155; -lean_dec(x_130); +lean_object* x_149; lean_object* x_150; +lean_dec(x_125); lean_dec(x_39); lean_dec(x_17); -x_154 = lean_ctor_get(x_143, 0); -lean_inc(x_154); -lean_dec(x_143); -x_155 = l_Lean_getBuiltinSearchPath(x_110); -if (lean_obj_tag(x_155) == 0) +x_149 = lean_ctor_get(x_138, 0); +lean_inc(x_149); +lean_dec(x_138); +x_150 = lean_get_prefix(x_105); +if (lean_obj_tag(x_150) == 0) { -lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_156 = lean_ctor_get(x_155, 0); +lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_151 = lean_ctor_get(x_150, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_dec(x_150); +x_153 = lean_ctor_get(x_149, 0); +lean_inc(x_153); +x_154 = l_Lean_initSearchPath(x_151, x_153, x_152); +if (lean_obj_tag(x_154) == 0) +{ +lean_object* x_155; lean_object* x_156; lean_object* x_157; +x_155 = lean_ctor_get(x_154, 1); +lean_inc(x_155); +lean_dec(x_154); +x_156 = lean_ctor_get(x_149, 1); lean_inc(x_156); -x_157 = lean_ctor_get(x_155, 1); -lean_inc(x_157); -lean_dec(x_155); -x_158 = l_Lean_addSearchPathFromEnv(x_156, x_157); -if (lean_obj_tag(x_158) == 0) +lean_dec(x_149); +x_157 = l_List_mapM___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__3(x_156, x_155); +return x_157; +} +else { -lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -x_159 = lean_ctor_get(x_158, 0); +lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; +lean_dec(x_149); +x_158 = lean_ctor_get(x_154, 0); +lean_inc(x_158); +x_159 = lean_ctor_get(x_154, 1); lean_inc(x_159); -x_160 = lean_ctor_get(x_158, 1); -lean_inc(x_160); -lean_dec(x_158); -x_161 = lean_ctor_get(x_154, 0); -lean_inc(x_161); -x_162 = l_List_appendTR___rarg(x_161, x_159); -x_163 = l_Lean_searchPathRef; -x_164 = lean_st_ref_set(x_163, x_162, x_160); -x_165 = lean_ctor_get(x_164, 1); -lean_inc(x_165); -lean_dec(x_164); -x_166 = lean_ctor_get(x_154, 1); -lean_inc(x_166); -lean_dec(x_154); -x_167 = l_List_mapM___at_Lean_Server_FileWorker_lakeSetupSearchPath___spec__3(x_166, x_165); -return x_167; -} -else -{ -lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; -lean_dec(x_154); -x_168 = lean_ctor_get(x_158, 0); -lean_inc(x_168); -x_169 = lean_ctor_get(x_158, 1); -lean_inc(x_169); -if (lean_is_exclusive(x_158)) { - lean_ctor_release(x_158, 0); - lean_ctor_release(x_158, 1); - x_170 = x_158; +if (lean_is_exclusive(x_154)) { + lean_ctor_release(x_154, 0); + lean_ctor_release(x_154, 1); + x_160 = x_154; } else { - lean_dec_ref(x_158); - x_170 = lean_box(0); + lean_dec_ref(x_154); + x_160 = lean_box(0); } -if (lean_is_scalar(x_170)) { - x_171 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_160)) { + x_161 = lean_alloc_ctor(1, 2, 0); } else { - x_171 = x_170; + x_161 = x_160; } -lean_ctor_set(x_171, 0, x_168); -lean_ctor_set(x_171, 1, x_169); -return x_171; +lean_ctor_set(x_161, 0, x_158); +lean_ctor_set(x_161, 1, x_159); +return x_161; } } else { -lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; -lean_dec(x_154); -x_172 = lean_ctor_get(x_155, 0); -lean_inc(x_172); -x_173 = lean_ctor_get(x_155, 1); -lean_inc(x_173); -if (lean_is_exclusive(x_155)) { - lean_ctor_release(x_155, 0); - lean_ctor_release(x_155, 1); - x_174 = x_155; +lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_149); +x_162 = lean_ctor_get(x_150, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_150, 1); +lean_inc(x_163); +if (lean_is_exclusive(x_150)) { + lean_ctor_release(x_150, 0); + lean_ctor_release(x_150, 1); + x_164 = x_150; } else { - lean_dec_ref(x_155); - x_174 = lean_box(0); + lean_dec_ref(x_150); + x_164 = lean_box(0); } -if (lean_is_scalar(x_174)) { - x_175 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_164)) { + x_165 = lean_alloc_ctor(1, 2, 0); } else { - x_175 = x_174; + x_165 = x_164; } -lean_ctor_set(x_175, 0, x_172); -lean_ctor_set(x_175, 1, x_173); -return x_175; +lean_ctor_set(x_165, 0, x_162); +lean_ctor_set(x_165, 1, x_163); +return x_165; } } } @@ -2509,107 +2492,107 @@ return x_175; } else { -uint8_t x_176; +uint8_t x_166; lean_dec(x_39); lean_dec(x_36); lean_dec(x_17); -x_176 = !lean_is_exclusive(x_41); -if (x_176 == 0) +x_166 = !lean_is_exclusive(x_41); +if (x_166 == 0) { return x_41; } else { -lean_object* x_177; lean_object* x_178; lean_object* x_179; -x_177 = lean_ctor_get(x_41, 0); -x_178 = lean_ctor_get(x_41, 1); -lean_inc(x_178); -lean_inc(x_177); +lean_object* x_167; lean_object* x_168; lean_object* x_169; +x_167 = lean_ctor_get(x_41, 0); +x_168 = lean_ctor_get(x_41, 1); +lean_inc(x_168); +lean_inc(x_167); lean_dec(x_41); -x_179 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_179, 0, x_177); -lean_ctor_set(x_179, 1, x_178); -return x_179; +x_169 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_169, 0, x_167); +lean_ctor_set(x_169, 1, x_168); +return x_169; } } } else { -uint8_t x_180; +uint8_t x_170; lean_dec(x_36); lean_dec(x_23); lean_dec(x_17); -x_180 = !lean_is_exclusive(x_38); -if (x_180 == 0) +x_170 = !lean_is_exclusive(x_38); +if (x_170 == 0) { return x_38; } else { -lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_181 = lean_ctor_get(x_38, 0); -x_182 = lean_ctor_get(x_38, 1); -lean_inc(x_182); -lean_inc(x_181); +lean_object* x_171; lean_object* x_172; lean_object* x_173; +x_171 = lean_ctor_get(x_38, 0); +x_172 = lean_ctor_get(x_38, 1); +lean_inc(x_172); +lean_inc(x_171); lean_dec(x_38); -x_183 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_183, 0, x_181); -lean_ctor_set(x_183, 1, x_182); -return x_183; +x_173 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_173, 0, x_171); +lean_ctor_set(x_173, 1, x_172); +return x_173; } } } else { -uint8_t x_184; +uint8_t x_174; lean_dec(x_30); lean_dec(x_23); lean_dec(x_17); -x_184 = !lean_is_exclusive(x_33); -if (x_184 == 0) +x_174 = !lean_is_exclusive(x_33); +if (x_174 == 0) { return x_33; } else { -lean_object* x_185; lean_object* x_186; lean_object* x_187; -x_185 = lean_ctor_get(x_33, 0); -x_186 = lean_ctor_get(x_33, 1); -lean_inc(x_186); -lean_inc(x_185); +lean_object* x_175; lean_object* x_176; lean_object* x_177; +x_175 = lean_ctor_get(x_33, 0); +x_176 = lean_ctor_get(x_33, 1); +lean_inc(x_176); +lean_inc(x_175); lean_dec(x_33); -x_187 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_187, 0, x_185); -lean_ctor_set(x_187, 1, x_186); -return x_187; +x_177 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_177, 0, x_175); +lean_ctor_set(x_177, 1, x_176); +return x_177; } } } else { -uint8_t x_188; +uint8_t x_178; lean_dec(x_17); lean_dec(x_13); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_188 = !lean_is_exclusive(x_22); -if (x_188 == 0) +x_178 = !lean_is_exclusive(x_22); +if (x_178 == 0) { return x_22; } else { -lean_object* x_189; lean_object* x_190; lean_object* x_191; -x_189 = lean_ctor_get(x_22, 0); -x_190 = lean_ctor_get(x_22, 1); -lean_inc(x_190); -lean_inc(x_189); +lean_object* x_179; lean_object* x_180; lean_object* x_181; +x_179 = lean_ctor_get(x_22, 0); +x_180 = lean_ctor_get(x_22, 1); +lean_inc(x_180); +lean_inc(x_179); lean_dec(x_22); -x_191 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_191, 0, x_189); -lean_ctor_set(x_191, 1, x_190); -return x_191; +x_181 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_181, 0, x_179); +lean_ctor_set(x_181, 1, x_180); +return x_181; } } } @@ -5262,7 +5245,6 @@ lean_dec(x_28); x_31 = lean_ctor_get(x_26, 1); lean_inc(x_31); x_32 = l_Lean_Syntax_structEq(x_29, x_31); -lean_dec(x_31); if (x_32 == 0) { lean_object* x_33; lean_object* x_34; lean_object* x_35; @@ -5475,7 +5457,6 @@ lean_dec(x_88); x_91 = lean_ctor_get(x_86, 1); lean_inc(x_91); x_92 = l_Lean_Syntax_structEq(x_89, x_91); -lean_dec(x_91); if (x_92 == 0) { lean_object* x_93; lean_object* x_94; lean_object* x_95; @@ -5691,7 +5672,6 @@ x_18 = lean_ctor_get(x_12, 1); lean_inc(x_18); lean_dec(x_12); x_19 = l_Lean_Syntax_structEq(x_17, x_18); -lean_dec(x_18); if (x_19 == 0) { lean_object* x_20; lean_object* x_21; uint8_t x_22; @@ -12836,102 +12816,97 @@ return x_62; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleRequest___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_10 = lean_ctor_get(x_1, 2); -x_11 = lean_ctor_get(x_2, 3); -lean_inc(x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_ctor_get(x_2, 2); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_10); -x_14 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_14, 0, x_10); -lean_ctor_set(x_14, 1, x_11); -lean_ctor_set(x_14, 2, x_12); -lean_ctor_set(x_14, 3, x_13); -x_15 = l_Lean_Server_handleLspRequest(x_3, x_4, x_14, x_9); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_ctor_get(x_2, 1); -lean_inc(x_19); -lean_dec(x_2); -lean_inc(x_5); -x_20 = l_Lean_Server_RequestError_toLspResponseError(x_5, x_18); -lean_dec(x_18); -x_21 = lean_alloc_closure((void*)(l_IO_FS_Stream_writeLspResponseError___boxed), 3, 2); -lean_closure_set(x_21, 0, x_19); -lean_closure_set(x_21, 1, x_20); -x_22 = lean_alloc_closure((void*)(l_EIO_toBaseIO___rarg), 2, 1); -lean_closure_set(x_22, 0, x_21); -x_23 = l_Task_Priority_default; -x_24 = lean_io_as_task(x_22, x_23, x_17); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Lean_Server_FileWorker_queueRequest(x_5, x_25, x_7, x_8, x_26); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_28 = lean_ctor_get(x_15, 1); -lean_inc(x_28); -lean_dec(x_15); -x_29 = lean_ctor_get(x_16, 0); -lean_inc(x_29); -lean_dec(x_16); -lean_inc(x_5); -x_30 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleRequest___lambda__1), 4, 2); -lean_closure_set(x_30, 0, x_2); -lean_closure_set(x_30, 1, x_5); -x_31 = l_Task_Priority_default; -x_32 = lean_io_map_task(x_30, x_29, x_31, x_28); -x_33 = lean_ctor_get(x_32, 0); +lean_object* x_10; lean_object* x_11; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_30 = lean_ctor_get(x_3, 2); +x_31 = lean_ctor_get(x_1, 3); +lean_inc(x_31); +x_32 = lean_ctor_get(x_3, 0); +x_33 = lean_ctor_get(x_1, 2); lean_inc(x_33); -x_34 = lean_ctor_get(x_32, 1); -lean_inc(x_34); -lean_dec(x_32); -x_35 = l_Lean_Server_FileWorker_queueRequest(x_5, x_33, x_7, x_8, x_34); -return x_35; -} -} -else +lean_inc(x_32); +lean_inc(x_30); +x_34 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_34, 0, x_30); +lean_ctor_set(x_34, 1, x_31); +lean_ctor_set(x_34, 2, x_32); +lean_ctor_set(x_34, 3, x_33); +x_35 = l_Lean_Server_handleLspRequest(x_4, x_5, x_34, x_9); +if (lean_obj_tag(x_35) == 0) { -uint8_t x_36; -lean_dec(x_5); -lean_dec(x_2); -x_36 = !lean_is_exclusive(x_15); -if (x_36 == 0) -{ -return x_15; -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_15, 0); -x_38 = lean_ctor_get(x_15, 1); -lean_inc(x_38); +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); lean_inc(x_37); -lean_dec(x_15); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_dec(x_35); +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_36); +x_10 = x_38; +x_11 = x_37; +goto block_29; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_35, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_35, 1); +lean_inc(x_40); +lean_dec(x_35); +x_41 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_41, 0, x_39); +x_10 = x_41; +x_11 = x_40; +goto block_29; +} +block_29: +{ +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_ctor_get(x_1, 1); +lean_inc(x_13); +lean_dec(x_1); +lean_inc(x_2); +x_14 = l_Lean_Server_RequestError_toLspResponseError(x_2, x_12); +lean_dec(x_12); +x_15 = lean_alloc_closure((void*)(l_IO_FS_Stream_writeLspResponseError___boxed), 3, 2); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_alloc_closure((void*)(l_EIO_toBaseIO___rarg), 2, 1); +lean_closure_set(x_16, 0, x_15); +x_17 = l_Task_Priority_default; +x_18 = lean_io_as_task(x_16, x_17, x_11); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = l_Lean_Server_FileWorker_queueRequest(x_2, x_19, x_7, x_8, x_20); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_22 = lean_ctor_get(x_10, 0); +lean_inc(x_22); +lean_dec(x_10); +lean_inc(x_2); +x_23 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleRequest___lambda__1), 4, 2); +lean_closure_set(x_23, 0, x_1); +lean_closure_set(x_23, 1, x_2); +x_24 = l_Task_Priority_default; +x_25 = lean_io_map_task(x_23, x_22, x_24, x_11); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_Server_FileWorker_queueRequest(x_2, x_26, x_7, x_8, x_27); +return x_28; } } } @@ -12961,10 +12936,10 @@ if (x_11 == 0) lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); lean_inc(x_4); -x_13 = l_Lean_Server_FileWorker_handleRequest___lambda__2(x_8, x_4, x_2, x_3, x_1, x_12, x_4, x_5, x_9); +x_13 = l_Lean_Server_FileWorker_handleRequest___lambda__2(x_4, x_1, x_8, x_2, x_3, x_12, x_4, x_5, x_9); lean_dec(x_5); -lean_dec(x_4); lean_dec(x_8); +lean_dec(x_4); return x_13; } else @@ -13266,7 +13241,7 @@ x_10 = l_Lean_Server_FileWorker_handleRequest___lambda__2(x_1, x_2, x_3, x_4, x_ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_1); +lean_dec(x_3); return x_10; } } diff --git a/stage0/stdlib/Lean/Server/FileWorker/RequestHandling.c b/stage0/stdlib/Lean/Server/FileWorker/RequestHandling.c index e7617c44d3..55c782d167 100644 --- a/stage0/stdlib/Lean/Server/FileWorker/RequestHandling.c +++ b/stage0/stdlib/Lean/Server/FileWorker/RequestHandling.c @@ -14,178 +14,191 @@ extern "C" { #endif lean_object* l_List_reverse___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9; lean_object* l_Lean_MapDeclarationExtension_find_x3f___at_Lean_findDeclarationRangesCore_x3f___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21(lean_object*, lean_object*, lean_object*); static lean_object* l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1___closed__3; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__12(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__1___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT uint8_t l___private_Lean_Server_FileWorker_RequestHandling_0__Lean_Server_FileWorker_beqGoToKind____x40_Lean_Server_FileWorker_RequestHandling___hyg_338_(uint8_t, uint8_t); static lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__3___closed__1; lean_object* l_Lean_Expr_mvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__7(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokensRange(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1; extern lean_object* l_instHashableString; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17; +uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__6; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens___lambda__1___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4; lean_object* l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonTextDocumentPositionParams____x40_Lean_Data_Lsp_Basic___hyg_1732_(lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_nullKind; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveGoals___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__4(lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); lean_object* l_Lean_Syntax_getOptional_x3f(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1; uint8_t lean_usize_dec_eq(size_t, size_t); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); +lean_object* lean_io_error_to_string(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonHoverParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_628_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__1(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__7; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonPlainGoalParams____x40_Lean_Data_Lsp_Extra___hyg_338_(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__1(lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_noConfusionExt; -uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2; extern lean_object* l_Std_Format_defWidth; static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__7; static lean_object* l_Lean_Server_FileWorker_handleHover___closed__1; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___closed__3; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_findDeclarationRangesCore_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___closed__2; -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__8; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__10; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_toCtorIdx___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion___rarg___lambda__1___boxed(lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__11; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__2; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__1; lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__3(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_Completion_find_x3f(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_RequestHandling_0__Lean_Server_FileWorker_beqGoToKind____x40_Lean_Server_FileWorker_RequestHandling___hyg_338____boxed(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__12; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__2; uint8_t lean_name_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___boxed(lean_object*); extern lean_object* l_Lean_declRangeExt; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___closed__4; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1; static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___closed__1; static lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal___closed__2; lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_Snapshots_Snapshot_infoTree(lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonPlainTermGoalParams____x40_Lean_Data_Lsp_Extra___hyg_553_(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___closed__1; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_addToken___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withPPInaccessibleNames___at_Lean_Server_FileWorker_getInteractiveGoals___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__8; lean_object* l_Lean_FileMap_lspPosToUtf8Pos(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__4; static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__11; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_IO_sleep(uint32_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_instBEqGoToKind; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; static lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__2___closed__1; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__9; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_utf8_byte_size(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675_(lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11; +LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731_(lean_object*); lean_object* l_List_join___rarg(lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__3; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17(size_t, size_t, lean_object*); LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleDefinition___lambda__8(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___boxed(lean_object*); static lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_findModuleOf_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__1(lean_object*); lean_object* l_Lean_FileMap_utf8PosToLspPos(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6; LEAN_EXPORT lean_object* l_panic___at_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___spec__2(lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__1(lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21; lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_toJsonPlainTermGoal____x40_Lean_Data_Lsp_Extra___hyg_716_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; lean_object* l_Lean_Elab_InfoTree_deepestNodes___rarg(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__2(lean_object*, lean_object*, size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Widget_InteractiveGoal_pretty(lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__5; -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__16(lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics_waitLoop(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27(lean_object*, lean_object*, lean_object*); +static lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1; lean_object* l_Except_map___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_toJsonHover____x40_Lean_Data_Lsp_LanguageFeatures___hyg_532_(lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonWaitForDiagnosticsParams____x40_Lean_Data_Lsp_Extra___hyg_24_(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__15(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__3; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6; lean_object* l_Lean_Elab_InfoTree_goalsAt_x3f(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; lean_object* l_Lean_Elab_InfoTree_findInfo_x3f(lean_object*, lean_object*); lean_object* l_Lean_Server_Snapshots_parseAhead(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__1___boxed(lean_object*, lean_object*, lean_object*); uint8_t l_String_Range_contains(lean_object*, lean_object*); lean_object* l_Lean_Json_compress(lean_object*); @@ -193,62 +206,58 @@ lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___closed__2; static lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonLocationLink____x40_Lean_Data_Lsp_Basic___hyg_777_(lean_object*); lean_object* l_Array_mapMUnsafe_map___at_Lean_Lsp_instToJsonDocumentSymbol_go___spec__3(size_t, size_t, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1; lean_object* l_Lean_Lsp_SemanticTokenType_toNat(uint8_t); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__2(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2; +lean_object* lean_io_realpath(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_findDeclarationRangesCore_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1; static lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__2(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(lean_object*); lean_object* l_String_Range_toLspRange(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__10; -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2(lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_toJsonSemanticTokens____x40_Lean_Data_Lsp_LanguageFeatures___hyg_2132_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___lambda__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__1(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6; lean_object* l_Lean_Widget_InteractiveTermGoal_toInteractiveGoal(lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_InfoTree_termGoalAt_x3f(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightKeyword(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDefinition___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightId___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleSemanticTokensFull___rarg___closed__1; lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonSemanticTokensRangeParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_1993_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokensFull(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightId___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__14(lean_object*); lean_object* lean_task_map(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion___rarg(uint8_t, uint8_t, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__3; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1; lean_object* l_Lean_Syntax_getId(lean_object*); extern lean_object* l_Lean_Server_requestHandlers; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_format_pretty(lean_object*, lean_object*); lean_object* l_Lean_Server_RequestM_bindTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_choiceKind; @@ -256,16 +265,12 @@ static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymb LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion(lean_object*); lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1; static lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveGoals(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightId(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__1; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__12; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9(size_t, size_t, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1; lean_object* l_Lean_SearchPath_findWithExt(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*, lean_object*); @@ -273,202 +278,207 @@ static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymb lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonSemanticTokensParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_1910_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handlePlainGoal(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__2(lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__5(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_RequestM_mapTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); uint32_t lean_string_utf8_get(lean_object*, lean_object*); static lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__4___boxed(lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__1(lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_toJsonPlainGoal____x40_Lean_Data_Lsp_Extra___hyg_502_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonDocumentSymbolParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_1225_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_toJsonDocumentHighlight____x40_Lean_Data_Lsp_LanguageFeatures___hyg_1177_(lean_object*); lean_object* lean_local_ctx_pop(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3; static lean_object* l_Lean_Server_FileWorker_handleCompletion___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__1(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1; uint8_t l_Array_isEmpty___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokensFull___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__1(lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Info_toElabInfo_x3f(lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__9; lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonCompletionParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_419_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__2(lean_object*); lean_object* l_Std_PersistentHashMap_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2; extern lean_object* l_Task_Priority_default; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_toCtorIdx(uint8_t); lean_object* l_Lean_Elab_Info_range_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isRec___at___private_Lean_Server_Completion_0__Lean_Server_Completion_isBlackListed___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__18(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleCompletion___closed__2; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__15; lean_object* l_String_decEq___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__3; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__1___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__6(lean_object*); LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleCompletion___lambda__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__1(lean_object*); uint8_t l_Char_isAlpha(uint32_t); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__5; lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_toJsonCompletionList____x40_Lean_Data_Lsp_LanguageFeatures___hyg_368_(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__4; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__7; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24; uint8_t l_Lean_Syntax_isNodeOf(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_drop___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightId___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_isIdOrAtom_x3f(lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1; static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__14; static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___closed__3; +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2(lean_object*); lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2; lean_object* l_IO_AsyncList_updateFinishedPrefix___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover(lean_object*, lean_object*, lean_object*); lean_object* l_String_intercalate(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1___closed__4; lean_object* l_List_redLength___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__10; static lean_object* l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__2; lean_object* lean_io_bind_task(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__11(lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16; static lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3; -LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__8(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokensFull___boxed(lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; lean_object* l_IO_AsyncList_finishedPrefix___rarg(lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition(uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__1; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__9; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__2(lean_object*); lean_object* l_Lean_Elab_Info_tailPos_x3f(lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1; static lean_object* l_Lean_Server_FileWorker_instBEqGoToKind___closed__1; lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); lean_object* l_Lean_Syntax_getKind(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__4; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2(lean_object*); static lean_object* l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__16; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; uint8_t lean_is_aux_recursor(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_findDeclarationRanges_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withPPInaccessibleNamesImp___rarg(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__8___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_findDeclarationRanges_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__2(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Server_RequestError_fileChanged; -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14; lean_object* l_Lean_Elab_Info_fmtHover_x3f(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__1(lean_object*); lean_object* l_Lean_Json_mkObj(lean_object*); lean_object* l_Lean_Elab_InfoTree_hoverableInfoAt_x3f(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5; lean_object* lean_nat_shiftl(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightKeyword___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_contains___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__1(lean_object*, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__2; lean_object* l_Lean_Name_getPrefix(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2; lean_object* l_Lean_Server_Snapshots_Snapshot_endPos(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__8(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_addToken(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__2; static lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion___rarg___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__19(lean_object*); static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___lambda__1___closed__2; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__2(lean_object*); extern lean_object* l_Lean_instInhabitedName; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2; +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1; static lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2___closed__2; lean_object* l_Lean_Expr_constName_x3f(lean_object*); lean_object* l_Lean_Environment_getModuleIdxFor_x3f(lean_object*, lean_object*); lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); uint8_t l_Lean_Syntax_isNone(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8; lean_object* l_instBEq___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol(lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_String_instInhabitedRange; lean_object* l_Option_map___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4(lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); lean_object* l_Lean_Server_toFileUri(lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__7; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Environment_allImportedModuleNames(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_noHighlightKinds; lean_object* l_Lean_Server_RequestM_withWaitFindSnap___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; lean_object* l_Lean_Meta_instantiateMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2; uint8_t l_Lean_TagDeclarationExtension_isTagged(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__13; lean_object* l_Lean_Syntax_getTailPos_x3f(lean_object*, uint8_t); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__2(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__6; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__6; LEAN_EXPORT lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(lean_object*, lean_object*, lean_object*); @@ -477,60 +487,69 @@ static lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2___closed__1 LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_initializing(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__2___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__9; +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveGoals___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__5; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal___lambda__1___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleHover___lambda__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__22(lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__1(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__1(lean_object*); static lean_object* l_Lean_Server_FileWorker_noHighlightKinds___closed__6; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handlePlainTermGoal___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1___closed__2; lean_object* l_Lean_Server_RequestM_asTask___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2; lean_object* l_Lean_Elab_Info_pos_x3f(lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1; LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleSemanticTokens___lambda__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__2(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__8; lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics_waitLoop___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__4; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__8; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__2; -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1; lean_object* l_Lean_Elab_Info_lctx(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handlePlainGoal___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__11; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___lambda__1___closed__3; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_ContextInfo_runMetaM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__4(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__4(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__6___closed__5; static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__2; @@ -540,32 +559,35 @@ lean_object* lean_task_pure(lean_object*); static lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___closed__1; static lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___closed__1; static lean_object* l_Lean_Server_FileWorker_handleHover___lambda__2___closed__3; +static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__25(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withPPInaccessibleNames___at_Lean_Server_FileWorker_getInteractiveGoals___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__2___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__2(lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10; +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__5(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_GoToKind_noConfusion___rarg___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__2(lean_object*); lean_object* l_Lean_Syntax_reprint(lean_object*); lean_object* l_List_getLast___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5; -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__2(lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1; lean_object* l_Lean_Server_RequestM_readDoc(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2; lean_object* l_List_getLastD___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Elab_Term_resolveName_x27___spec__3(lean_object*); LEAN_EXPORT lean_object* l_Lean_findModuleOf_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__11(lean_object*); lean_object* l_Lean_Widget_goalToInteractive(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f___lambda__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_LanguageFeatures_0__Lean_Lsp_fromJsonDocumentHighlightParams____x40_Lean_Data_Lsp_LanguageFeatures___hyg_1040_(lean_object*); @@ -573,13 +595,11 @@ static lean_object* l_Lean_Server_FileWorker_handlePlainGoal___lambda__1___close LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; -x_4 = lean_alloc_ctor(1, 1, 0); +lean_object* x_4; +x_4 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_4, 0, x_1); -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_4); -lean_ctor_set(x_5, 1, x_3); -return x_5; +lean_ctor_set(x_4, 1, x_3); +return x_4; } } LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1(lean_object* x_1) { @@ -603,13 +623,11 @@ return x_4; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; lean_object* x_6; -x_5 = lean_alloc_ctor(1, 1, 0); +lean_object* x_5; +x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_1); -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_5); -lean_ctor_set(x_6, 1, x_4); -return x_6; +lean_ctor_set(x_5, 1, x_4); +return x_5; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { @@ -625,71 +643,94 @@ x_9 = lean_ctor_get(x_8, 0); lean_inc(x_9); if (lean_obj_tag(x_9) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); -x_11 = lean_box(0); -x_12 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_3, x_11, x_5, x_10); -return x_12; +uint8_t x_10; +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +x_11 = lean_ctor_get(x_8, 0); +lean_dec(x_11); +lean_ctor_set(x_8, 0, x_3); +return x_8; } else { -uint8_t x_13; -lean_dec(x_3); -x_13 = !lean_is_exclusive(x_8); -if (x_13 == 0) +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_3); +lean_ctor_set(x_13, 1, x_12); +return x_13; +} +} +else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_8, 0); -lean_dec(x_14); -x_15 = lean_ctor_get(x_9, 0); -lean_inc(x_15); +uint8_t x_14; +lean_dec(x_3); +x_14 = !lean_is_exclusive(x_8); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_8, 0); +lean_dec(x_15); +x_16 = lean_ctor_get(x_9, 0); +lean_inc(x_16); lean_dec(x_9); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_8, 0, x_16); return x_8; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_17; lean_object* x_18; lean_object* x_19; x_17 = lean_ctor_get(x_8, 1); lean_inc(x_17); lean_dec(x_8); x_18 = lean_ctor_get(x_9, 0); lean_inc(x_18); lean_dec(x_9); -x_19 = lean_alloc_ctor(1, 1, 0); +x_19 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_19, 0, x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_17); -return x_20; +lean_ctor_set(x_19, 1, x_17); +return x_19; } } } else { -uint8_t x_21; +uint8_t x_20; lean_dec(x_3); -x_21 = !lean_is_exclusive(x_8); -if (x_21 == 0) +x_20 = !lean_is_exclusive(x_8); +if (x_20 == 0) { +lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_21 = lean_ctor_get(x_8, 0); +x_22 = lean_io_error_to_string(x_21); +x_23 = 4; +x_24 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*1, x_23); +lean_ctor_set(x_8, 0, x_24); return x_8; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_8, 0); -x_23 = lean_ctor_get(x_8, 1); -lean_inc(x_23); -lean_inc(x_22); +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; +x_25 = lean_ctor_get(x_8, 0); +x_26 = lean_ctor_get(x_8, 1); +lean_inc(x_26); +lean_inc(x_25); lean_dec(x_8); -x_24 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_24, 0, x_22); -lean_ctor_set(x_24, 1, x_23); -return x_24; +x_27 = lean_io_error_to_string(x_25); +x_28 = 4; +x_29 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set_uint8(x_29, sizeof(void*)*1, x_28); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_26); +return x_30; } } } @@ -718,7 +759,7 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleCompletion(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -727,28 +768,25 @@ lean_inc(x_6); lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 2); +lean_dec(x_7); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); -x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); -lean_inc(x_11); -x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__1___boxed), 2, 1); -lean_closure_set(x_12, 0, x_11); -x_13 = l_Lean_Server_FileWorker_handleCompletion___closed__2; -x_14 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg___boxed), 3, 1); -lean_closure_set(x_14, 0, x_13); -x_15 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__3___boxed), 6, 3); -lean_closure_set(x_15, 0, x_9); -lean_closure_set(x_15, 1, x_11); -lean_closure_set(x_15, 2, x_13); -x_16 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_12, x_14, x_15, x_2, x_6); -return x_16; +x_10 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_9); +lean_inc(x_10); +x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__1___boxed), 2, 1); +lean_closure_set(x_11, 0, x_10); +x_12 = l_Lean_Server_FileWorker_handleCompletion___closed__2; +x_13 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg___boxed), 3, 1); +lean_closure_set(x_13, 0, x_12); +x_14 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__3___boxed), 6, 3); +lean_closure_set(x_14, 0, x_8); +lean_closure_set(x_14, 1, x_10); +lean_closure_set(x_14, 2, x_12); +x_15 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_5, x_11, x_13, x_14, x_2, x_6); +return x_15; } } LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Server_FileWorker_handleCompletion___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -845,64 +883,79 @@ x_7 = l_Lean_Server_Snapshots_Snapshot_infoTree(x_4); x_8 = l_Lean_Elab_InfoTree_hoverableInfoAt_x3f(x_7, x_2); if (lean_obj_tag(x_8) == 0) { -lean_object* x_9; lean_object* x_10; -x_9 = lean_box(0); -x_10 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_1, x_9, x_5, x_6); -return x_10; +lean_object* x_9; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_1); +lean_ctor_set(x_9, 1, x_6); +return x_9; } else { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_8); -if (x_11 == 0) +uint8_t x_10; +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_8, 0); -x_13 = lean_ctor_get(x_12, 0); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_8, 0); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); +lean_dec(x_11); +lean_inc(x_13); +x_14 = l_Lean_Elab_Info_fmtHover_x3f(x_12, x_13, x_6); lean_dec(x_12); -lean_inc(x_14); -x_15 = l_Lean_Elab_Info_fmtHover_x3f(x_13, x_14, x_6); -lean_dec(x_13); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); if (lean_obj_tag(x_15) == 0) { -lean_object* x_16; -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_dec(x_14); +uint8_t x_16; +lean_dec(x_13); lean_free_object(x_8); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_box(0); -x_19 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_1, x_18, x_5, x_17); +x_16 = !lean_is_exclusive(x_14); +if (x_16 == 0) +{ +lean_object* x_17; +x_17 = lean_ctor_get(x_14, 0); +lean_dec(x_17); +lean_ctor_set(x_14, 0, x_1); +return x_14; +} +else +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_1); +lean_ctor_set(x_19, 1, x_18); return x_19; } +} else { uint8_t x_20; lean_dec(x_1); -x_20 = !lean_is_exclusive(x_15); +x_20 = !lean_is_exclusive(x_14); if (x_20 == 0) { lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_15, 0); +x_21 = lean_ctor_get(x_14, 0); lean_dec(x_21); -x_22 = !lean_is_exclusive(x_16); +x_22 = !lean_is_exclusive(x_15); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; -x_23 = lean_ctor_get(x_16, 0); +x_23 = lean_ctor_get(x_15, 0); x_24 = l_Std_Format_defWidth; x_25 = lean_format_pretty(x_23, x_24); -x_26 = l_Lean_Elab_Info_pos_x3f(x_14); -x_27 = l_Lean_Elab_Info_tailPos_x3f(x_14); -lean_dec(x_14); +x_26 = l_Lean_Elab_Info_pos_x3f(x_13); +x_27 = l_Lean_Elab_Info_tailPos_x3f(x_13); +lean_dec(x_13); x_28 = 1; x_29 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_29, 0, x_25); @@ -916,855 +969,841 @@ x_32 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_31); lean_dec(x_31); if (lean_obj_tag(x_27) == 0) { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; x_33 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_30); x_34 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_33); lean_dec(x_33); x_35 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_35, 0, x_32); lean_ctor_set(x_35, 1, x_34); -lean_ctor_set(x_16, 0, x_35); +lean_ctor_set(x_15, 0, x_35); x_36 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_36, 0, x_29); -lean_ctor_set(x_36, 1, x_16); +lean_ctor_set(x_36, 1, x_15); lean_ctor_set(x_8, 0, x_36); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_8); -lean_ctor_set(x_15, 0, x_37); -return x_15; +lean_ctor_set(x_14, 0, x_8); +return x_14; } else { -uint8_t x_38; +uint8_t x_37; lean_free_object(x_8); -x_38 = !lean_is_exclusive(x_27); -if (x_38 == 0) +x_37 = !lean_is_exclusive(x_27); +if (x_37 == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_ctor_get(x_27, 0); -x_40 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_39); -lean_dec(x_39); +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = lean_ctor_get(x_27, 0); +x_39 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_38); +lean_dec(x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_32); +lean_ctor_set(x_40, 1, x_39); +lean_ctor_set(x_27, 0, x_40); x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_32); -lean_ctor_set(x_41, 1, x_40); -lean_ctor_set(x_27, 0, x_41); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_29); -lean_ctor_set(x_42, 1, x_27); -lean_ctor_set(x_16, 0, x_42); -x_43 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_43, 0, x_16); -lean_ctor_set(x_15, 0, x_43); -return x_15; +lean_ctor_set(x_41, 0, x_29); +lean_ctor_set(x_41, 1, x_27); +lean_ctor_set(x_15, 0, x_41); +return x_14; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_44 = lean_ctor_get(x_27, 0); -lean_inc(x_44); +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_42 = lean_ctor_get(x_27, 0); +lean_inc(x_42); lean_dec(x_27); -x_45 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_44); -lean_dec(x_44); +x_43 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_42); +lean_dec(x_42); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_32); +lean_ctor_set(x_44, 1, x_43); +x_45 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_45, 0, x_44); x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_32); +lean_ctor_set(x_46, 0, x_29); lean_ctor_set(x_46, 1, x_45); -x_47 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_47, 0, x_46); -x_48 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_48, 0, x_29); -lean_ctor_set(x_48, 1, x_47); -lean_ctor_set(x_16, 0, x_48); -x_49 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_49, 0, x_16); -lean_ctor_set(x_15, 0, x_49); -return x_15; +lean_ctor_set(x_15, 0, x_46); +return x_14; } } } else { -uint8_t x_50; +uint8_t x_47; lean_free_object(x_8); -x_50 = !lean_is_exclusive(x_26); -if (x_50 == 0) +x_47 = !lean_is_exclusive(x_26); +if (x_47 == 0) { -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_26, 0); -x_52 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_51); -lean_dec(x_51); +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_26, 0); +x_49 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_48); +lean_dec(x_48); if (lean_obj_tag(x_27) == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_54 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_53); -x_55 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_54); -lean_dec(x_54); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_52); -lean_ctor_set(x_56, 1, x_55); -lean_ctor_set(x_26, 0, x_56); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_29); -lean_ctor_set(x_57, 1, x_26); -lean_ctor_set(x_16, 0, x_57); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_16); -lean_ctor_set(x_15, 0, x_58); -return x_15; +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_51 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_50); +x_52 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_51); +lean_dec(x_51); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_49); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_26, 0, x_53); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_29); +lean_ctor_set(x_54, 1, x_26); +lean_ctor_set(x_15, 0, x_54); +return x_14; } else { -uint8_t x_59; -lean_free_object(x_16); -x_59 = !lean_is_exclusive(x_27); -if (x_59 == 0) +uint8_t x_55; +lean_free_object(x_15); +x_55 = !lean_is_exclusive(x_27); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_27, 0); +x_57 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_56); +lean_dec(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_49); +lean_ctor_set(x_58, 1, x_57); +lean_ctor_set(x_27, 0, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_29); +lean_ctor_set(x_59, 1, x_27); +lean_ctor_set(x_26, 0, x_59); +lean_ctor_set(x_14, 0, x_26); +return x_14; +} +else { lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; x_60 = lean_ctor_get(x_27, 0); +lean_inc(x_60); +lean_dec(x_27); x_61 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_60); lean_dec(x_60); x_62 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_62, 0, x_52); +lean_ctor_set(x_62, 0, x_49); lean_ctor_set(x_62, 1, x_61); -lean_ctor_set(x_27, 0, x_62); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_29); -lean_ctor_set(x_63, 1, x_27); -lean_ctor_set(x_26, 0, x_63); -x_64 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_64, 0, x_26); -lean_ctor_set(x_15, 0, x_64); -return x_15; +x_63 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_63, 0, x_62); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_29); +lean_ctor_set(x_64, 1, x_63); +lean_ctor_set(x_26, 0, x_64); +lean_ctor_set(x_14, 0, x_26); +return x_14; +} +} } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_65 = lean_ctor_get(x_27, 0); +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_26, 0); lean_inc(x_65); -lean_dec(x_27); +lean_dec(x_26); x_66 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_65); lean_dec(x_65); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_52); -lean_ctor_set(x_67, 1, x_66); -x_68 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_68, 0, x_67); -x_69 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_69, 0, x_29); -lean_ctor_set(x_69, 1, x_68); -lean_ctor_set(x_26, 0, x_69); -x_70 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_70, 0, x_26); -lean_ctor_set(x_15, 0, x_70); -return x_15; -} -} +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_67 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_68 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_67); +x_69 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_68); +lean_dec(x_68); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_66); +lean_ctor_set(x_70, 1, x_69); +x_71 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_71, 0, x_70); +x_72 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_72, 0, x_29); +lean_ctor_set(x_72, 1, x_71); +lean_ctor_set(x_15, 0, x_72); +return x_14; } else { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_26, 0); -lean_inc(x_71); -lean_dec(x_26); -x_72 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_71); -lean_dec(x_71); -if (lean_obj_tag(x_27) == 0) -{ lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_73 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_74 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_73); -x_75 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_74); -lean_dec(x_74); +lean_free_object(x_15); +x_73 = lean_ctor_get(x_27, 0); +lean_inc(x_73); +if (lean_is_exclusive(x_27)) { + lean_ctor_release(x_27, 0); + x_74 = x_27; +} else { + lean_dec_ref(x_27); + x_74 = lean_box(0); +} +x_75 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_73); +lean_dec(x_73); x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_72); +lean_ctor_set(x_76, 0, x_66); lean_ctor_set(x_76, 1, x_75); -x_77 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_74)) { + x_77 = lean_alloc_ctor(1, 1, 0); +} else { + x_77 = x_74; +} lean_ctor_set(x_77, 0, x_76); x_78 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_78, 0, x_29); lean_ctor_set(x_78, 1, x_77); -lean_ctor_set(x_16, 0, x_78); x_79 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_79, 0, x_16); -lean_ctor_set(x_15, 0, x_79); -return x_15; +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set(x_14, 0, x_79); +return x_14; +} +} +} } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_free_object(x_16); -x_80 = lean_ctor_get(x_27, 0); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t x_85; lean_object* x_86; +x_80 = lean_ctor_get(x_15, 0); lean_inc(x_80); -if (lean_is_exclusive(x_27)) { - lean_ctor_release(x_27, 0); - x_81 = x_27; -} else { - lean_dec_ref(x_27); - x_81 = lean_box(0); -} -x_82 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_80); -lean_dec(x_80); -x_83 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_83, 0, x_72); -lean_ctor_set(x_83, 1, x_82); -if (lean_is_scalar(x_81)) { - x_84 = lean_alloc_ctor(1, 1, 0); -} else { - x_84 = x_81; -} -lean_ctor_set(x_84, 0, x_83); -x_85 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_85, 0, x_29); -lean_ctor_set(x_85, 1, x_84); -x_86 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_86, 0, x_85); -x_87 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_87, 0, x_86); -lean_ctor_set(x_15, 0, x_87); -return x_15; -} -} -} +lean_dec(x_15); +x_81 = l_Std_Format_defWidth; +x_82 = lean_format_pretty(x_80, x_81); +x_83 = l_Lean_Elab_Info_pos_x3f(x_13); +x_84 = l_Lean_Elab_Info_tailPos_x3f(x_13); +lean_dec(x_13); +x_85 = 1; +x_86 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_86, 0, x_82); +lean_ctor_set_uint8(x_86, sizeof(void*)*1, x_85); +if (lean_obj_tag(x_83) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_87 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_88 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_87); +x_89 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_88); +lean_dec(x_88); +if (lean_obj_tag(x_84) == 0) +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_90 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_87); +x_91 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_90); +lean_dec(x_90); +x_92 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_92, 0, x_89); +lean_ctor_set(x_92, 1, x_91); +x_93 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_93, 0, x_92); +x_94 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_94, 0, x_86); +lean_ctor_set(x_94, 1, x_93); +lean_ctor_set(x_8, 0, x_94); +lean_ctor_set(x_14, 0, x_8); +return x_14; } else { -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; uint8_t x_93; lean_object* x_94; -x_88 = lean_ctor_get(x_16, 0); -lean_inc(x_88); -lean_dec(x_16); -x_89 = l_Std_Format_defWidth; -x_90 = lean_format_pretty(x_88, x_89); -x_91 = l_Lean_Elab_Info_pos_x3f(x_14); -x_92 = l_Lean_Elab_Info_tailPos_x3f(x_14); -lean_dec(x_14); -x_93 = 1; -x_94 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_94, 0, x_90); -lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_93); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_95 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_96 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_95); -x_97 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_96); -lean_dec(x_96); -if (lean_obj_tag(x_92) == 0) -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -x_98 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_95); -x_99 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_98); -lean_dec(x_98); +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_free_object(x_8); +x_95 = lean_ctor_get(x_84, 0); +lean_inc(x_95); +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + x_96 = x_84; +} else { + lean_dec_ref(x_84); + x_96 = lean_box(0); +} +x_97 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_95); +lean_dec(x_95); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_89); +lean_ctor_set(x_98, 1, x_97); +if (lean_is_scalar(x_96)) { + x_99 = lean_alloc_ctor(1, 1, 0); +} else { + x_99 = x_96; +} +lean_ctor_set(x_99, 0, x_98); x_100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_100, 0, x_97); +lean_ctor_set(x_100, 0, x_86); lean_ctor_set(x_100, 1, x_99); x_101 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_101, 0, x_100); -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_94); -lean_ctor_set(x_102, 1, x_101); -lean_ctor_set(x_8, 0, x_102); -x_103 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_103, 0, x_8); -lean_ctor_set(x_15, 0, x_103); -return x_15; +lean_ctor_set(x_14, 0, x_101); +return x_14; +} } else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_free_object(x_8); -x_104 = lean_ctor_get(x_92, 0); -lean_inc(x_104); -if (lean_is_exclusive(x_92)) { - lean_ctor_release(x_92, 0); - x_105 = x_92; +x_102 = lean_ctor_get(x_83, 0); +lean_inc(x_102); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + x_103 = x_83; } else { - lean_dec_ref(x_92); - x_105 = lean_box(0); + lean_dec_ref(x_83); + x_103 = lean_box(0); } -x_106 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_104); -lean_dec(x_104); -x_107 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_107, 0, x_97); -lean_ctor_set(x_107, 1, x_106); -if (lean_is_scalar(x_105)) { - x_108 = lean_alloc_ctor(1, 1, 0); +x_104 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_102); +lean_dec(x_102); +if (lean_obj_tag(x_84) == 0) +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_105 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_106 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_105); +x_107 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_106); +lean_dec(x_106); +x_108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_108, 0, x_104); +lean_ctor_set(x_108, 1, x_107); +if (lean_is_scalar(x_103)) { + x_109 = lean_alloc_ctor(1, 1, 0); } else { - x_108 = x_105; + x_109 = x_103; } -lean_ctor_set(x_108, 0, x_107); -x_109 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_109, 0, x_94); -lean_ctor_set(x_109, 1, x_108); -x_110 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_110, 0, x_109); +lean_ctor_set(x_109, 0, x_108); +x_110 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_110, 0, x_86); +lean_ctor_set(x_110, 1, x_109); x_111 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_111, 0, x_110); -lean_ctor_set(x_15, 0, x_111); -return x_15; -} +lean_ctor_set(x_14, 0, x_111); +return x_14; } else { -lean_object* x_112; lean_object* x_113; lean_object* x_114; -lean_free_object(x_8); -x_112 = lean_ctor_get(x_91, 0); +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_112 = lean_ctor_get(x_84, 0); lean_inc(x_112); -if (lean_is_exclusive(x_91)) { - lean_ctor_release(x_91, 0); - x_113 = x_91; +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + x_113 = x_84; } else { - lean_dec_ref(x_91); + lean_dec_ref(x_84); x_113 = lean_box(0); } x_114 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_112); lean_dec(x_112); -if (lean_obj_tag(x_92) == 0) -{ -lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_115 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_116 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_115); -x_117 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_116); -lean_dec(x_116); -x_118 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_118, 0, x_114); -lean_ctor_set(x_118, 1, x_117); +x_115 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_115, 0, x_104); +lean_ctor_set(x_115, 1, x_114); if (lean_is_scalar(x_113)) { - x_119 = lean_alloc_ctor(1, 1, 0); + x_116 = lean_alloc_ctor(1, 1, 0); } else { - x_119 = x_113; + x_116 = x_113; } -lean_ctor_set(x_119, 0, x_118); -x_120 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_120, 0, x_94); -lean_ctor_set(x_120, 1, x_119); -x_121 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_121, 0, x_120); -x_122 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_122, 0, x_121); -lean_ctor_set(x_15, 0, x_122); -return x_15; -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_123 = lean_ctor_get(x_92, 0); -lean_inc(x_123); -if (lean_is_exclusive(x_92)) { - lean_ctor_release(x_92, 0); - x_124 = x_92; +lean_ctor_set(x_116, 0, x_115); +x_117 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_117, 0, x_86); +lean_ctor_set(x_117, 1, x_116); +if (lean_is_scalar(x_103)) { + x_118 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_92); - x_124 = lean_box(0); + x_118 = x_103; } -x_125 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_123); -lean_dec(x_123); -x_126 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_126, 0, x_114); -lean_ctor_set(x_126, 1, x_125); -if (lean_is_scalar(x_124)) { - x_127 = lean_alloc_ctor(1, 1, 0); -} else { - x_127 = x_124; -} -lean_ctor_set(x_127, 0, x_126); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_94); -lean_ctor_set(x_128, 1, x_127); -if (lean_is_scalar(x_113)) { - x_129 = lean_alloc_ctor(1, 1, 0); -} else { - x_129 = x_113; -} -lean_ctor_set(x_129, 0, x_128); -x_130 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_130, 0, x_129); -lean_ctor_set(x_15, 0, x_130); -return x_15; +lean_ctor_set(x_118, 0, x_117); +lean_ctor_set(x_14, 0, x_118); +return x_14; } } } } else { -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; uint8_t x_138; lean_object* x_139; -x_131 = lean_ctor_get(x_15, 1); -lean_inc(x_131); -lean_dec(x_15); -x_132 = lean_ctor_get(x_16, 0); -lean_inc(x_132); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - x_133 = x_16; -} else { - lean_dec_ref(x_16); - x_133 = lean_box(0); -} -x_134 = l_Std_Format_defWidth; -x_135 = lean_format_pretty(x_132, x_134); -x_136 = l_Lean_Elab_Info_pos_x3f(x_14); -x_137 = l_Lean_Elab_Info_tailPos_x3f(x_14); +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; lean_object* x_127; +x_119 = lean_ctor_get(x_14, 1); +lean_inc(x_119); lean_dec(x_14); -x_138 = 1; -x_139 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_139, 0, x_135); -lean_ctor_set_uint8(x_139, sizeof(void*)*1, x_138); -if (lean_obj_tag(x_136) == 0) -{ -lean_object* x_140; lean_object* x_141; lean_object* x_142; -x_140 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_141 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_140); -x_142 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_141); -lean_dec(x_141); -if (lean_obj_tag(x_137) == 0) -{ -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; -x_143 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_140); -x_144 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_143); -lean_dec(x_143); -x_145 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_145, 0, x_142); -lean_ctor_set(x_145, 1, x_144); -if (lean_is_scalar(x_133)) { - x_146 = lean_alloc_ctor(1, 1, 0); +x_120 = lean_ctor_get(x_15, 0); +lean_inc(x_120); +if (lean_is_exclusive(x_15)) { + lean_ctor_release(x_15, 0); + x_121 = x_15; } else { - x_146 = x_133; + lean_dec_ref(x_15); + x_121 = lean_box(0); } -lean_ctor_set(x_146, 0, x_145); -x_147 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_147, 0, x_139); -lean_ctor_set(x_147, 1, x_146); -lean_ctor_set(x_8, 0, x_147); -x_148 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_148, 0, x_8); -x_149 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_149, 0, x_148); -lean_ctor_set(x_149, 1, x_131); -return x_149; +x_122 = l_Std_Format_defWidth; +x_123 = lean_format_pretty(x_120, x_122); +x_124 = l_Lean_Elab_Info_pos_x3f(x_13); +x_125 = l_Lean_Elab_Info_tailPos_x3f(x_13); +lean_dec(x_13); +x_126 = 1; +x_127 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_127, 0, x_123); +lean_ctor_set_uint8(x_127, sizeof(void*)*1, x_126); +if (lean_obj_tag(x_124) == 0) +{ +lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_128 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_129 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_128); +x_130 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_129); +lean_dec(x_129); +if (lean_obj_tag(x_125) == 0) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_131 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_128); +x_132 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_131); +lean_dec(x_131); +x_133 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_133, 0, x_130); +lean_ctor_set(x_133, 1, x_132); +if (lean_is_scalar(x_121)) { + x_134 = lean_alloc_ctor(1, 1, 0); +} else { + x_134 = x_121; +} +lean_ctor_set(x_134, 0, x_133); +x_135 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_135, 0, x_127); +lean_ctor_set(x_135, 1, x_134); +lean_ctor_set(x_8, 0, x_135); +x_136 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_136, 0, x_8); +lean_ctor_set(x_136, 1, x_119); +return x_136; } else { -lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_free_object(x_8); -x_150 = lean_ctor_get(x_137, 0); -lean_inc(x_150); -if (lean_is_exclusive(x_137)) { - lean_ctor_release(x_137, 0); - x_151 = x_137; +x_137 = lean_ctor_get(x_125, 0); +lean_inc(x_137); +if (lean_is_exclusive(x_125)) { + lean_ctor_release(x_125, 0); + x_138 = x_125; } else { - lean_dec_ref(x_137); - x_151 = lean_box(0); + lean_dec_ref(x_125); + x_138 = lean_box(0); } -x_152 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_150); -lean_dec(x_150); +x_139 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_137); +lean_dec(x_137); +x_140 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_140, 0, x_130); +lean_ctor_set(x_140, 1, x_139); +if (lean_is_scalar(x_138)) { + x_141 = lean_alloc_ctor(1, 1, 0); +} else { + x_141 = x_138; +} +lean_ctor_set(x_141, 0, x_140); +x_142 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_142, 0, x_127); +lean_ctor_set(x_142, 1, x_141); +if (lean_is_scalar(x_121)) { + x_143 = lean_alloc_ctor(1, 1, 0); +} else { + x_143 = x_121; +} +lean_ctor_set(x_143, 0, x_142); +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_143); +lean_ctor_set(x_144, 1, x_119); +return x_144; +} +} +else +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_free_object(x_8); +x_145 = lean_ctor_get(x_124, 0); +lean_inc(x_145); +if (lean_is_exclusive(x_124)) { + lean_ctor_release(x_124, 0); + x_146 = x_124; +} else { + lean_dec_ref(x_124); + x_146 = lean_box(0); +} +x_147 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_145); +lean_dec(x_145); +if (lean_obj_tag(x_125) == 0) +{ +lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +x_148 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_149 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_148); +x_150 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_149); +lean_dec(x_149); +x_151 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_151, 0, x_147); +lean_ctor_set(x_151, 1, x_150); +if (lean_is_scalar(x_146)) { + x_152 = lean_alloc_ctor(1, 1, 0); +} else { + x_152 = x_146; +} +lean_ctor_set(x_152, 0, x_151); x_153 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_153, 0, x_142); +lean_ctor_set(x_153, 0, x_127); lean_ctor_set(x_153, 1, x_152); -if (lean_is_scalar(x_151)) { +if (lean_is_scalar(x_121)) { x_154 = lean_alloc_ctor(1, 1, 0); } else { - x_154 = x_151; + x_154 = x_121; } lean_ctor_set(x_154, 0, x_153); x_155 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_155, 0, x_139); -lean_ctor_set(x_155, 1, x_154); -if (lean_is_scalar(x_133)) { - x_156 = lean_alloc_ctor(1, 1, 0); -} else { - x_156 = x_133; +lean_ctor_set(x_155, 0, x_154); +lean_ctor_set(x_155, 1, x_119); +return x_155; +} +else +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; +lean_dec(x_121); +x_156 = lean_ctor_get(x_125, 0); +lean_inc(x_156); +if (lean_is_exclusive(x_125)) { + lean_ctor_release(x_125, 0); + x_157 = x_125; +} else { + lean_dec_ref(x_125); + x_157 = lean_box(0); +} +x_158 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_156); +lean_dec(x_156); +x_159 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_159, 0, x_147); +lean_ctor_set(x_159, 1, x_158); +if (lean_is_scalar(x_157)) { + x_160 = lean_alloc_ctor(1, 1, 0); +} else { + x_160 = x_157; +} +lean_ctor_set(x_160, 0, x_159); +x_161 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_161, 0, x_127); +lean_ctor_set(x_161, 1, x_160); +if (lean_is_scalar(x_146)) { + x_162 = lean_alloc_ctor(1, 1, 0); +} else { + x_162 = x_146; +} +lean_ctor_set(x_162, 0, x_161); +x_163 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_163, 0, x_162); +lean_ctor_set(x_163, 1, x_119); +return x_163; +} +} } -lean_ctor_set(x_156, 0, x_155); -x_157 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_157, 0, x_156); -x_158 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_158, 0, x_157); -lean_ctor_set(x_158, 1, x_131); -return x_158; } } else { -lean_object* x_159; lean_object* x_160; lean_object* x_161; +uint8_t x_164; +lean_dec(x_13); lean_free_object(x_8); -x_159 = lean_ctor_get(x_136, 0); -lean_inc(x_159); -if (lean_is_exclusive(x_136)) { - lean_ctor_release(x_136, 0); - x_160 = x_136; -} else { - lean_dec_ref(x_136); - x_160 = lean_box(0); -} -x_161 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_159); -lean_dec(x_159); -if (lean_obj_tag(x_137) == 0) +lean_dec(x_1); +x_164 = !lean_is_exclusive(x_14); +if (x_164 == 0) { -lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; -x_162 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_163 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_162); -x_164 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_163); -lean_dec(x_163); -x_165 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_165, 0, x_161); -lean_ctor_set(x_165, 1, x_164); -if (lean_is_scalar(x_160)) { - x_166 = lean_alloc_ctor(1, 1, 0); -} else { - x_166 = x_160; -} -lean_ctor_set(x_166, 0, x_165); -x_167 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_167, 0, x_139); -lean_ctor_set(x_167, 1, x_166); -if (lean_is_scalar(x_133)) { - x_168 = lean_alloc_ctor(1, 1, 0); -} else { - x_168 = x_133; -} -lean_ctor_set(x_168, 0, x_167); -x_169 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_169, 0, x_168); -x_170 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_170, 0, x_169); -lean_ctor_set(x_170, 1, x_131); -return x_170; +lean_object* x_165; lean_object* x_166; uint8_t x_167; lean_object* x_168; +x_165 = lean_ctor_get(x_14, 0); +x_166 = lean_io_error_to_string(x_165); +x_167 = 4; +x_168 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_168, 0, x_166); +lean_ctor_set_uint8(x_168, sizeof(void*)*1, x_167); +lean_ctor_set(x_14, 0, x_168); +return x_14; } else { -lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; -lean_dec(x_133); -x_171 = lean_ctor_get(x_137, 0); -lean_inc(x_171); -if (lean_is_exclusive(x_137)) { - lean_ctor_release(x_137, 0); - x_172 = x_137; -} else { - lean_dec_ref(x_137); - x_172 = lean_box(0); -} -x_173 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_171); -lean_dec(x_171); -x_174 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_174, 0, x_161); -lean_ctor_set(x_174, 1, x_173); -if (lean_is_scalar(x_172)) { - x_175 = lean_alloc_ctor(1, 1, 0); -} else { - x_175 = x_172; -} -lean_ctor_set(x_175, 0, x_174); -x_176 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_176, 0, x_139); -lean_ctor_set(x_176, 1, x_175); -if (lean_is_scalar(x_160)) { - x_177 = lean_alloc_ctor(1, 1, 0); -} else { - x_177 = x_160; -} -lean_ctor_set(x_177, 0, x_176); -x_178 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_178, 0, x_177); -x_179 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_179, 0, x_178); -lean_ctor_set(x_179, 1, x_131); -return x_179; -} -} -} -} -} -else -{ -uint8_t x_180; +lean_object* x_169; lean_object* x_170; lean_object* x_171; uint8_t x_172; lean_object* x_173; lean_object* x_174; +x_169 = lean_ctor_get(x_14, 0); +x_170 = lean_ctor_get(x_14, 1); +lean_inc(x_170); +lean_inc(x_169); lean_dec(x_14); -lean_free_object(x_8); -lean_dec(x_1); -x_180 = !lean_is_exclusive(x_15); -if (x_180 == 0) -{ -return x_15; -} -else -{ -lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_181 = lean_ctor_get(x_15, 0); -x_182 = lean_ctor_get(x_15, 1); -lean_inc(x_182); -lean_inc(x_181); -lean_dec(x_15); -x_183 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_183, 0, x_181); -lean_ctor_set(x_183, 1, x_182); -return x_183; +x_171 = lean_io_error_to_string(x_169); +x_172 = 4; +x_173 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_173, 0, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*1, x_172); +x_174 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_174, 0, x_173); +lean_ctor_set(x_174, 1, x_170); +return x_174; } } } else { -lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; -x_184 = lean_ctor_get(x_8, 0); -lean_inc(x_184); +lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; +x_175 = lean_ctor_get(x_8, 0); +lean_inc(x_175); lean_dec(x_8); -x_185 = lean_ctor_get(x_184, 0); -lean_inc(x_185); -x_186 = lean_ctor_get(x_184, 1); -lean_inc(x_186); -lean_dec(x_184); -lean_inc(x_186); -x_187 = l_Lean_Elab_Info_fmtHover_x3f(x_185, x_186, x_6); -lean_dec(x_185); -if (lean_obj_tag(x_187) == 0) +x_176 = lean_ctor_get(x_175, 0); +lean_inc(x_176); +x_177 = lean_ctor_get(x_175, 1); +lean_inc(x_177); +lean_dec(x_175); +lean_inc(x_177); +x_178 = l_Lean_Elab_Info_fmtHover_x3f(x_176, x_177, x_6); +lean_dec(x_176); +if (lean_obj_tag(x_178) == 0) { -lean_object* x_188; -x_188 = lean_ctor_get(x_187, 0); -lean_inc(x_188); -if (lean_obj_tag(x_188) == 0) +lean_object* x_179; +x_179 = lean_ctor_get(x_178, 0); +lean_inc(x_179); +if (lean_obj_tag(x_179) == 0) { -lean_object* x_189; lean_object* x_190; lean_object* x_191; -lean_dec(x_186); -x_189 = lean_ctor_get(x_187, 1); -lean_inc(x_189); -lean_dec(x_187); -x_190 = lean_box(0); -x_191 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_1, x_190, x_5, x_189); -return x_191; +lean_object* x_180; lean_object* x_181; lean_object* x_182; +lean_dec(x_177); +x_180 = lean_ctor_get(x_178, 1); +lean_inc(x_180); +if (lean_is_exclusive(x_178)) { + lean_ctor_release(x_178, 0); + lean_ctor_release(x_178, 1); + x_181 = x_178; +} else { + lean_dec_ref(x_178); + x_181 = lean_box(0); +} +if (lean_is_scalar(x_181)) { + x_182 = lean_alloc_ctor(0, 2, 0); +} else { + x_182 = x_181; +} +lean_ctor_set(x_182, 0, x_1); +lean_ctor_set(x_182, 1, x_180); +return x_182; } else { -lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; uint8_t x_200; lean_object* x_201; +lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; uint8_t x_191; lean_object* x_192; lean_dec(x_1); -x_192 = lean_ctor_get(x_187, 1); -lean_inc(x_192); -if (lean_is_exclusive(x_187)) { - lean_ctor_release(x_187, 0); - lean_ctor_release(x_187, 1); - x_193 = x_187; +x_183 = lean_ctor_get(x_178, 1); +lean_inc(x_183); +if (lean_is_exclusive(x_178)) { + lean_ctor_release(x_178, 0); + lean_ctor_release(x_178, 1); + x_184 = x_178; } else { - lean_dec_ref(x_187); - x_193 = lean_box(0); + lean_dec_ref(x_178); + x_184 = lean_box(0); } -x_194 = lean_ctor_get(x_188, 0); -lean_inc(x_194); -if (lean_is_exclusive(x_188)) { - lean_ctor_release(x_188, 0); - x_195 = x_188; +x_185 = lean_ctor_get(x_179, 0); +lean_inc(x_185); +if (lean_is_exclusive(x_179)) { + lean_ctor_release(x_179, 0); + x_186 = x_179; } else { - lean_dec_ref(x_188); - x_195 = lean_box(0); + lean_dec_ref(x_179); + x_186 = lean_box(0); } -x_196 = l_Std_Format_defWidth; -x_197 = lean_format_pretty(x_194, x_196); -x_198 = l_Lean_Elab_Info_pos_x3f(x_186); -x_199 = l_Lean_Elab_Info_tailPos_x3f(x_186); -lean_dec(x_186); -x_200 = 1; -x_201 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_201, 0, x_197); -lean_ctor_set_uint8(x_201, sizeof(void*)*1, x_200); -if (lean_obj_tag(x_198) == 0) +x_187 = l_Std_Format_defWidth; +x_188 = lean_format_pretty(x_185, x_187); +x_189 = l_Lean_Elab_Info_pos_x3f(x_177); +x_190 = l_Lean_Elab_Info_tailPos_x3f(x_177); +lean_dec(x_177); +x_191 = 1; +x_192 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_192, 0, x_188); +lean_ctor_set_uint8(x_192, sizeof(void*)*1, x_191); +if (lean_obj_tag(x_189) == 0) { -lean_object* x_202; lean_object* x_203; lean_object* x_204; -x_202 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_203 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_202); -x_204 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_203); -lean_dec(x_203); -if (lean_obj_tag(x_199) == 0) +lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_193 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_194 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_193); +x_195 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_194); +lean_dec(x_194); +if (lean_obj_tag(x_190) == 0) { -lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; -x_205 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_202); -x_206 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_205); -lean_dec(x_205); -x_207 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_207, 0, x_204); -lean_ctor_set(x_207, 1, x_206); -if (lean_is_scalar(x_195)) { - x_208 = lean_alloc_ctor(1, 1, 0); +lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; +x_196 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_193); +x_197 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_196); +lean_dec(x_196); +x_198 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_198, 0, x_195); +lean_ctor_set(x_198, 1, x_197); +if (lean_is_scalar(x_186)) { + x_199 = lean_alloc_ctor(1, 1, 0); } else { - x_208 = x_195; + x_199 = x_186; } -lean_ctor_set(x_208, 0, x_207); -x_209 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_209, 0, x_201); -lean_ctor_set(x_209, 1, x_208); -x_210 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_210, 0, x_209); -x_211 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_211, 0, x_210); -if (lean_is_scalar(x_193)) { - x_212 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_199, 0, x_198); +x_200 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_200, 0, x_192); +lean_ctor_set(x_200, 1, x_199); +x_201 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_201, 0, x_200); +if (lean_is_scalar(x_184)) { + x_202 = lean_alloc_ctor(0, 2, 0); } else { - x_212 = x_193; + x_202 = x_184; } -lean_ctor_set(x_212, 0, x_211); -lean_ctor_set(x_212, 1, x_192); -return x_212; +lean_ctor_set(x_202, 0, x_201); +lean_ctor_set(x_202, 1, x_183); +return x_202; } else { -lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; -x_213 = lean_ctor_get(x_199, 0); -lean_inc(x_213); -if (lean_is_exclusive(x_199)) { - lean_ctor_release(x_199, 0); - x_214 = x_199; +lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; +x_203 = lean_ctor_get(x_190, 0); +lean_inc(x_203); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + x_204 = x_190; } else { - lean_dec_ref(x_199); - x_214 = lean_box(0); + lean_dec_ref(x_190); + x_204 = lean_box(0); } -x_215 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_213); -lean_dec(x_213); -x_216 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_216, 0, x_204); -lean_ctor_set(x_216, 1, x_215); -if (lean_is_scalar(x_214)) { - x_217 = lean_alloc_ctor(1, 1, 0); +x_205 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_203); +lean_dec(x_203); +x_206 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_206, 0, x_195); +lean_ctor_set(x_206, 1, x_205); +if (lean_is_scalar(x_204)) { + x_207 = lean_alloc_ctor(1, 1, 0); } else { - x_217 = x_214; + x_207 = x_204; } -lean_ctor_set(x_217, 0, x_216); -x_218 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_218, 0, x_201); -lean_ctor_set(x_218, 1, x_217); -if (lean_is_scalar(x_195)) { - x_219 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_207, 0, x_206); +x_208 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_208, 0, x_192); +lean_ctor_set(x_208, 1, x_207); +if (lean_is_scalar(x_186)) { + x_209 = lean_alloc_ctor(1, 1, 0); } else { - x_219 = x_195; + x_209 = x_186; +} +lean_ctor_set(x_209, 0, x_208); +if (lean_is_scalar(x_184)) { + x_210 = lean_alloc_ctor(0, 2, 0); +} else { + x_210 = x_184; +} +lean_ctor_set(x_210, 0, x_209); +lean_ctor_set(x_210, 1, x_183); +return x_210; +} +} +else +{ +lean_object* x_211; lean_object* x_212; lean_object* x_213; +x_211 = lean_ctor_get(x_189, 0); +lean_inc(x_211); +if (lean_is_exclusive(x_189)) { + lean_ctor_release(x_189, 0); + x_212 = x_189; +} else { + lean_dec_ref(x_189); + x_212 = lean_box(0); +} +x_213 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_211); +lean_dec(x_211); +if (lean_obj_tag(x_190) == 0) +{ +lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; +x_214 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_215 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_214); +x_216 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_215); +lean_dec(x_215); +x_217 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_217, 0, x_213); +lean_ctor_set(x_217, 1, x_216); +if (lean_is_scalar(x_212)) { + x_218 = lean_alloc_ctor(1, 1, 0); +} else { + x_218 = x_212; +} +lean_ctor_set(x_218, 0, x_217); +x_219 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_219, 0, x_192); +lean_ctor_set(x_219, 1, x_218); +if (lean_is_scalar(x_186)) { + x_220 = lean_alloc_ctor(1, 1, 0); +} else { + x_220 = x_186; } -lean_ctor_set(x_219, 0, x_218); -x_220 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_220, 0, x_219); -if (lean_is_scalar(x_193)) { +if (lean_is_scalar(x_184)) { x_221 = lean_alloc_ctor(0, 2, 0); } else { - x_221 = x_193; + x_221 = x_184; } lean_ctor_set(x_221, 0, x_220); -lean_ctor_set(x_221, 1, x_192); +lean_ctor_set(x_221, 1, x_183); return x_221; } -} else { -lean_object* x_222; lean_object* x_223; lean_object* x_224; -x_222 = lean_ctor_get(x_198, 0); +lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; +lean_dec(x_186); +x_222 = lean_ctor_get(x_190, 0); lean_inc(x_222); -if (lean_is_exclusive(x_198)) { - lean_ctor_release(x_198, 0); - x_223 = x_198; +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + x_223 = x_190; } else { - lean_dec_ref(x_198); + lean_dec_ref(x_190); x_223 = lean_box(0); } x_224 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_222); lean_dec(x_222); -if (lean_obj_tag(x_199) == 0) -{ -lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; -x_225 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_226 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_225); -x_227 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_226); -lean_dec(x_226); -x_228 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_228, 0, x_224); -lean_ctor_set(x_228, 1, x_227); +x_225 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_225, 0, x_213); +lean_ctor_set(x_225, 1, x_224); if (lean_is_scalar(x_223)) { - x_229 = lean_alloc_ctor(1, 1, 0); + x_226 = lean_alloc_ctor(1, 1, 0); } else { - x_229 = x_223; + x_226 = x_223; +} +lean_ctor_set(x_226, 0, x_225); +x_227 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_227, 0, x_192); +lean_ctor_set(x_227, 1, x_226); +if (lean_is_scalar(x_212)) { + x_228 = lean_alloc_ctor(1, 1, 0); +} else { + x_228 = x_212; +} +lean_ctor_set(x_228, 0, x_227); +if (lean_is_scalar(x_184)) { + x_229 = lean_alloc_ctor(0, 2, 0); +} else { + x_229 = x_184; } lean_ctor_set(x_229, 0, x_228); -x_230 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_230, 0, x_201); -lean_ctor_set(x_230, 1, x_229); -if (lean_is_scalar(x_195)) { - x_231 = lean_alloc_ctor(1, 1, 0); -} else { - x_231 = x_195; -} -lean_ctor_set(x_231, 0, x_230); -x_232 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_232, 0, x_231); -if (lean_is_scalar(x_193)) { - x_233 = lean_alloc_ctor(0, 2, 0); -} else { - x_233 = x_193; -} -lean_ctor_set(x_233, 0, x_232); -lean_ctor_set(x_233, 1, x_192); -return x_233; -} -else -{ -lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; -lean_dec(x_195); -x_234 = lean_ctor_get(x_199, 0); -lean_inc(x_234); -if (lean_is_exclusive(x_199)) { - lean_ctor_release(x_199, 0); - x_235 = x_199; -} else { - lean_dec_ref(x_199); - x_235 = lean_box(0); -} -x_236 = l_Lean_FileMap_utf8PosToLspPos(x_3, x_234); -lean_dec(x_234); -x_237 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_237, 0, x_224); -lean_ctor_set(x_237, 1, x_236); -if (lean_is_scalar(x_235)) { - x_238 = lean_alloc_ctor(1, 1, 0); -} else { - x_238 = x_235; -} -lean_ctor_set(x_238, 0, x_237); -x_239 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_239, 0, x_201); -lean_ctor_set(x_239, 1, x_238); -if (lean_is_scalar(x_223)) { - x_240 = lean_alloc_ctor(1, 1, 0); -} else { - x_240 = x_223; -} -lean_ctor_set(x_240, 0, x_239); -x_241 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_241, 0, x_240); -if (lean_is_scalar(x_193)) { - x_242 = lean_alloc_ctor(0, 2, 0); -} else { - x_242 = x_193; -} -lean_ctor_set(x_242, 0, x_241); -lean_ctor_set(x_242, 1, x_192); -return x_242; +lean_ctor_set(x_229, 1, x_183); +return x_229; } } } } else { -lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; -lean_dec(x_186); +lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; uint8_t x_234; lean_object* x_235; lean_object* x_236; +lean_dec(x_177); lean_dec(x_1); -x_243 = lean_ctor_get(x_187, 0); -lean_inc(x_243); -x_244 = lean_ctor_get(x_187, 1); -lean_inc(x_244); -if (lean_is_exclusive(x_187)) { - lean_ctor_release(x_187, 0); - lean_ctor_release(x_187, 1); - x_245 = x_187; +x_230 = lean_ctor_get(x_178, 0); +lean_inc(x_230); +x_231 = lean_ctor_get(x_178, 1); +lean_inc(x_231); +if (lean_is_exclusive(x_178)) { + lean_ctor_release(x_178, 0); + lean_ctor_release(x_178, 1); + x_232 = x_178; } else { - lean_dec_ref(x_187); - x_245 = lean_box(0); + lean_dec_ref(x_178); + x_232 = lean_box(0); } -if (lean_is_scalar(x_245)) { - x_246 = lean_alloc_ctor(1, 2, 0); +x_233 = lean_io_error_to_string(x_230); +x_234 = 4; +x_235 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_235, 0, x_233); +lean_ctor_set_uint8(x_235, sizeof(void*)*1, x_234); +if (lean_is_scalar(x_232)) { + x_236 = lean_alloc_ctor(1, 2, 0); } else { - x_246 = x_245; + x_236 = x_232; } -lean_ctor_set(x_246, 0, x_243); -lean_ctor_set(x_246, 1, x_244); -return x_246; +lean_ctor_set(x_236, 0, x_235); +lean_ctor_set(x_236, 1, x_231); +return x_236; } } } @@ -1783,7 +1822,7 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -1792,27 +1831,24 @@ lean_inc(x_6); lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 2); +lean_dec(x_7); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); -x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); -lean_inc(x_11); -x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); -lean_closure_set(x_12, 0, x_11); -x_13 = lean_box(0); -x_14 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__2___boxed), 6, 3); -lean_closure_set(x_14, 0, x_13); -lean_closure_set(x_14, 1, x_11); -lean_closure_set(x_14, 2, x_9); -x_15 = l_Lean_Server_FileWorker_handleHover___closed__1; -x_16 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_12, x_15, x_14, x_2, x_6); -return x_16; +x_10 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_9); +lean_inc(x_10); +x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); +lean_closure_set(x_11, 0, x_10); +x_12 = lean_box(0); +x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__2___boxed), 6, 3); +lean_closure_set(x_13, 0, x_12); +lean_closure_set(x_13, 1, x_10); +lean_closure_set(x_13, 2, x_8); +x_14 = l_Lean_Server_FileWorker_handleHover___closed__1; +x_15 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_5, x_11, x_14, x_13, x_2, x_6); +return x_15; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleHover___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { @@ -2676,7 +2712,7 @@ return x_17; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_dec(x_5); x_18 = lean_ctor_get(x_12, 1); lean_inc(x_18); @@ -2691,69 +2727,188 @@ x_21 = lean_st_ref_get(x_10, x_18); x_22 = lean_ctor_get(x_21, 1); lean_inc(x_22); lean_dec(x_21); -x_23 = l_Lean_Server_FileWorker_handleDefinition___lambda__3___closed__1; -x_24 = l_Lean_SearchPath_findWithExt(x_20, x_23, x_19, x_22); +x_23 = lean_ctor_get(x_9, 3); +lean_inc(x_23); +x_24 = l_Lean_Server_FileWorker_handleDefinition___lambda__3___closed__1; +x_25 = l_Lean_SearchPath_findWithExt(x_20, x_24, x_19, x_22); lean_dec(x_19); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_24, 1); +x_26 = lean_ctor_get(x_25, 0); lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_box(0); -x_28 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_27, x_7, x_8, x_9, x_10, x_26); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -return x_28; -} -else +if (lean_obj_tag(x_26) == 0) { -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_24, 1); -lean_inc(x_29); -lean_dec(x_24); -x_30 = !lean_is_exclusive(x_25); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_25, 0); -x_32 = l_Lean_Server_toFileUri(x_31); -lean_ctor_set(x_25, 0, x_32); -x_33 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_25, x_7, x_8, x_9, x_10, x_29); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_23); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); lean_dec(x_25); -return x_33; +x_28 = lean_box(0); +x_29 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_28, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_29; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_25, 0); +lean_object* x_30; uint8_t x_31; +x_30 = lean_ctor_get(x_25, 1); +lean_inc(x_30); +lean_dec(x_25); +x_31 = !lean_is_exclusive(x_26); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_32 = lean_ctor_get(x_26, 0); +x_33 = lean_st_ref_get(x_10, x_30); +x_34 = lean_ctor_get(x_33, 1); lean_inc(x_34); -lean_dec(x_25); -x_35 = l_Lean_Server_toFileUri(x_34); -x_36 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_36, 0, x_35); -x_37 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_36, x_7, x_8, x_9, x_10, x_29); +lean_dec(x_33); +x_35 = lean_io_realpath(x_32, x_34); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_23); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = l_Lean_Server_toFileUri(x_36); +lean_ctor_set(x_26, 0, x_38); +x_39 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_26, x_7, x_8, x_9, x_10, x_37); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_36); -return x_37; +lean_dec(x_26); +return x_39; +} +else +{ +uint8_t x_40; +lean_free_object(x_26); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_35); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = lean_ctor_get(x_35, 0); +x_42 = lean_io_error_to_string(x_41); +x_43 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_43, 0, x_42); +x_44 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_44, 0, x_43); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_23); +lean_ctor_set(x_45, 1, x_44); +lean_ctor_set(x_35, 0, x_45); +return x_35; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_46 = lean_ctor_get(x_35, 0); +x_47 = lean_ctor_get(x_35, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_35); +x_48 = lean_io_error_to_string(x_46); +x_49 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_49, 0, x_48); +x_50 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_50, 0, x_49); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_23); +lean_ctor_set(x_51, 1, x_50); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_47); +return x_52; +} +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_53 = lean_ctor_get(x_26, 0); +lean_inc(x_53); +lean_dec(x_26); +x_54 = lean_st_ref_get(x_10, x_30); +x_55 = lean_ctor_get(x_54, 1); +lean_inc(x_55); +lean_dec(x_54); +x_56 = lean_io_realpath(x_53, x_55); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_23); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +x_59 = l_Lean_Server_toFileUri(x_57); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_59); +x_61 = l_Lean_Server_FileWorker_handleDefinition___lambda__2(x_1, x_2, x_3, x_4, x_60, x_7, x_8, x_9, x_10, x_58); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_60); +return x_61; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +x_62 = lean_ctor_get(x_56, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_56, 1); +lean_inc(x_63); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_64 = x_56; +} else { + lean_dec_ref(x_56); + x_64 = lean_box(0); +} +x_65 = lean_io_error_to_string(x_62); +x_66 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_66, 0, x_65); +x_67 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_67, 0, x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_23); +lean_ctor_set(x_68, 1, x_67); +if (lean_is_scalar(x_64)) { + x_69 = lean_alloc_ctor(1, 2, 0); +} else { + x_69 = x_64; +} +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_63); +return x_69; +} } } } } else { -uint8_t x_38; +uint8_t x_70; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -2762,23 +2917,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_38 = !lean_is_exclusive(x_12); -if (x_38 == 0) +x_70 = !lean_is_exclusive(x_12); +if (x_70 == 0) { return x_12; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_12, 0); -x_40 = lean_ctor_get(x_12, 1); -lean_inc(x_40); -lean_inc(x_39); +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = lean_ctor_get(x_12, 0); +x_72 = lean_ctor_get(x_12, 1); +lean_inc(x_72); +lean_inc(x_71); lean_dec(x_12); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; +x_73 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +return x_73; } } } @@ -2848,49 +3003,55 @@ uint8_t x_25; x_25 = !lean_is_exclusive(x_24); if (x_25 == 0) { -lean_object* x_26; lean_object* x_27; +return x_24; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; x_26 = lean_ctor_get(x_24, 0); -x_27 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_24, 0, x_27); -return x_24; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_28 = lean_ctor_get(x_24, 0); -x_29 = lean_ctor_get(x_24, 1); -lean_inc(x_29); -lean_inc(x_28); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); lean_dec(x_24); -x_30 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_30, 0, x_28); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_29); -return x_31; +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } else { -uint8_t x_32; -x_32 = !lean_is_exclusive(x_24); -if (x_32 == 0) +uint8_t x_29; +x_29 = !lean_is_exclusive(x_24); +if (x_29 == 0) { +lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_24, 0); +x_31 = lean_io_error_to_string(x_30); +x_32 = 4; +x_33 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set_uint8(x_33, sizeof(void*)*1, x_32); +lean_ctor_set(x_24, 0, x_33); return x_24; } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = lean_ctor_get(x_24, 0); -x_34 = lean_ctor_get(x_24, 1); +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; lean_object* x_39; +x_34 = lean_ctor_get(x_24, 0); +x_35 = lean_ctor_get(x_24, 1); +lean_inc(x_35); lean_inc(x_34); -lean_inc(x_33); lean_dec(x_24); -x_35 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); -return x_35; +x_36 = lean_io_error_to_string(x_34); +x_37 = 4; +x_38 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set_uint8(x_38, sizeof(void*)*1, x_37); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_35); +return x_39; } } } @@ -2971,49 +3132,55 @@ uint8_t x_29; x_29 = !lean_is_exclusive(x_28); if (x_29 == 0) { -lean_object* x_30; lean_object* x_31; +return x_28; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; x_30 = lean_ctor_get(x_28, 0); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_28, 0, x_31); -return x_28; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_32 = lean_ctor_get(x_28, 0); -x_33 = lean_ctor_get(x_28, 1); -lean_inc(x_33); -lean_inc(x_32); +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_31); +lean_inc(x_30); lean_dec(x_28); -x_34 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_34, 0, x_32); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_33); -return x_35; +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; } } else { -uint8_t x_36; -x_36 = !lean_is_exclusive(x_28); -if (x_36 == 0) +uint8_t x_33; +x_33 = !lean_is_exclusive(x_28); +if (x_33 == 0) { +lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_28, 0); +x_35 = lean_io_error_to_string(x_34); +x_36 = 4; +x_37 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set_uint8(x_37, sizeof(void*)*1, x_36); +lean_ctor_set(x_28, 0, x_37); return x_28; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_28, 0); -x_38 = lean_ctor_get(x_28, 1); +lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_28, 0); +x_39 = lean_ctor_get(x_28, 1); +lean_inc(x_39); lean_inc(x_38); -lean_inc(x_37); lean_dec(x_28); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -return x_39; +x_40 = lean_io_error_to_string(x_38); +x_41 = 4; +x_42 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set_uint8(x_42, sizeof(void*)*1, x_41); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_39); +return x_43; } } } @@ -3104,157 +3271,169 @@ uint8_t x_19; x_19 = !lean_is_exclusive(x_18); if (x_19 == 0) { -lean_object* x_20; lean_object* x_21; +return x_18; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; x_20 = lean_ctor_get(x_18, 0); -x_21 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_18, 0, x_21); -return x_18; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_22 = lean_ctor_get(x_18, 0); -x_23 = lean_ctor_get(x_18, 1); -lean_inc(x_23); -lean_inc(x_22); +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_inc(x_20); lean_dec(x_18); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_22); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -return x_25; +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; } } else { -uint8_t x_26; -x_26 = !lean_is_exclusive(x_18); -if (x_26 == 0) +uint8_t x_23; +x_23 = !lean_is_exclusive(x_18); +if (x_23 == 0) { +lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; +x_24 = lean_ctor_get(x_18, 0); +x_25 = lean_io_error_to_string(x_24); +x_26 = 4; +x_27 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set_uint8(x_27, sizeof(void*)*1, x_26); +lean_ctor_set(x_18, 0, x_27); return x_18; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_18, 0); -x_28 = lean_ctor_get(x_18, 1); +lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; +x_28 = lean_ctor_get(x_18, 0); +x_29 = lean_ctor_get(x_18, 1); +lean_inc(x_29); lean_inc(x_28); -lean_inc(x_27); lean_dec(x_18); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +x_30 = lean_io_error_to_string(x_28); +x_31 = 4; +x_32 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set_uint8(x_32, sizeof(void*)*1, x_31); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_29); +return x_33; } } } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_30 = l_Lean_Elab_Info_lctx(x_1); -x_31 = lean_ctor_get(x_12, 3); -lean_inc(x_31); -lean_dec(x_12); -x_32 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__6), 6, 1); -lean_closure_set(x_32, 0, x_31); -lean_inc(x_30); -x_33 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_4, x_30, x_32, x_11); -if (lean_obj_tag(x_33) == 0) -{ lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_ctor_get(x_33, 1); +x_34 = l_Lean_Elab_Info_lctx(x_1); +x_35 = lean_ctor_get(x_12, 3); lean_inc(x_35); -lean_dec(x_33); -x_36 = l_Lean_Expr_getAppFn(x_34); -lean_dec(x_34); -x_37 = l_Lean_Expr_constName_x3f(x_36); -lean_dec(x_36); +lean_dec(x_12); +x_36 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__6), 6, 1); +lean_closure_set(x_36, 0, x_35); +lean_inc(x_34); +x_37 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_4, x_34, x_36, x_11); if (lean_obj_tag(x_37) == 0) { -lean_object* x_38; lean_object* x_39; -lean_dec(x_30); -x_38 = lean_box(0); -x_39 = l_Lean_Server_FileWorker_handleDefinition___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_38, x_10, x_35); -return x_39; +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Lean_Expr_getAppFn(x_38); +lean_dec(x_38); +x_41 = l_Lean_Expr_constName_x3f(x_40); +lean_dec(x_40); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_34); +x_42 = lean_box(0); +x_43 = l_Lean_Server_FileWorker_handleDefinition___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_42, x_10, x_39); +return x_43; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_dec(x_10); lean_dec(x_2); -x_40 = lean_ctor_get(x_37, 0); -lean_inc(x_40); -lean_dec(x_37); -x_41 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__3___boxed), 11, 6); -lean_closure_set(x_41, 0, x_40); -lean_closure_set(x_41, 1, x_5); -lean_closure_set(x_41, 2, x_1); -lean_closure_set(x_41, 3, x_6); -lean_closure_set(x_41, 4, x_7); -lean_closure_set(x_41, 5, x_8); -x_42 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_4, x_30, x_41, x_35); +x_44 = lean_ctor_get(x_41, 0); +lean_inc(x_44); +lean_dec(x_41); +x_45 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__3___boxed), 11, 6); +lean_closure_set(x_45, 0, x_44); +lean_closure_set(x_45, 1, x_5); +lean_closure_set(x_45, 2, x_1); +lean_closure_set(x_45, 3, x_6); +lean_closure_set(x_45, 4, x_7); +lean_closure_set(x_45, 5, x_8); +x_46 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_4, x_34, x_45, x_39); lean_dec(x_4); -if (lean_obj_tag(x_42) == 0) +if (lean_obj_tag(x_46) == 0) { -uint8_t x_43; -x_43 = !lean_is_exclusive(x_42); -if (x_43 == 0) +uint8_t x_47; +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) { -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_42, 0); -x_45 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_42, 0, x_45); -return x_42; +return x_46; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_46 = lean_ctor_get(x_42, 0); -x_47 = lean_ctor_get(x_42, 1); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_42); -x_48 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_48, 0, x_46); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_47); -return x_49; +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_46, 0); +x_49 = lean_ctor_get(x_46, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_46); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; } } else { -uint8_t x_50; -x_50 = !lean_is_exclusive(x_42); -if (x_50 == 0) +uint8_t x_51; +x_51 = !lean_is_exclusive(x_46); +if (x_51 == 0) { -return x_42; +lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; +x_52 = lean_ctor_get(x_46, 0); +x_53 = lean_io_error_to_string(x_52); +x_54 = 4; +x_55 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set_uint8(x_55, sizeof(void*)*1, x_54); +lean_ctor_set(x_46, 0, x_55); +return x_46; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_42, 0); -x_52 = lean_ctor_get(x_42, 1); -lean_inc(x_52); -lean_inc(x_51); -lean_dec(x_42); -x_53 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); -return x_53; +lean_object* x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; lean_object* x_60; lean_object* x_61; +x_56 = lean_ctor_get(x_46, 0); +x_57 = lean_ctor_get(x_46, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_46); +x_58 = lean_io_error_to_string(x_56); +x_59 = 4; +x_60 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set_uint8(x_60, sizeof(void*)*1, x_59); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_57); +return x_61; } } } } else { -uint8_t x_54; -lean_dec(x_30); +uint8_t x_62; +lean_dec(x_34); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); @@ -3263,33 +3442,46 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_54 = !lean_is_exclusive(x_33); -if (x_54 == 0) +x_62 = !lean_is_exclusive(x_37); +if (x_62 == 0) { -return x_33; +lean_object* x_63; lean_object* x_64; uint8_t x_65; lean_object* x_66; +x_63 = lean_ctor_get(x_37, 0); +x_64 = lean_io_error_to_string(x_63); +x_65 = 4; +x_66 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set_uint8(x_66, sizeof(void*)*1, x_65); +lean_ctor_set(x_37, 0, x_66); +return x_37; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_55 = lean_ctor_get(x_33, 0); -x_56 = lean_ctor_get(x_33, 1); -lean_inc(x_56); -lean_inc(x_55); -lean_dec(x_33); -x_57 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_56); -return x_57; +lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; lean_object* x_71; lean_object* x_72; +x_67 = lean_ctor_get(x_37, 0); +x_68 = lean_ctor_get(x_37, 1); +lean_inc(x_68); +lean_inc(x_67); +lean_dec(x_37); +x_69 = lean_io_error_to_string(x_67); +x_70 = 4; +x_71 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set_uint8(x_71, sizeof(void*)*1, x_70); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_68); +return x_72; } } } } else { -lean_object* x_58; lean_object* x_59; -x_58 = lean_box(0); -x_59 = l_Lean_Server_FileWorker_handleDefinition___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_58, x_10, x_11); -return x_59; +lean_object* x_73; lean_object* x_74; +x_73 = lean_box(0); +x_74 = l_Lean_Server_FileWorker_handleDefinition___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_73, x_10, x_11); +return x_74; } } } @@ -3350,7 +3542,7 @@ _start: switch (lean_obj_tag(x_10)) { case 1: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_34; lean_object* x_35; lean_dec(x_12); lean_dec(x_9); lean_dec(x_8); @@ -3359,461 +3551,280 @@ x_14 = lean_ctor_get(x_10, 0); lean_inc(x_14); lean_dec(x_10); x_15 = l_Lean_Elab_Info_lctx(x_2); -x_16 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__8___boxed), 2, 1); -lean_closure_set(x_16, 0, x_14); -x_17 = l_Lean_Elab_InfoTree_findInfo_x3f(x_16, x_4); -if (lean_obj_tag(x_17) == 0) +x_34 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__8___boxed), 2, 1); +lean_closure_set(x_34, 0, x_14); +x_35 = l_Lean_Elab_InfoTree_findInfo_x3f(x_34, x_5); +if (lean_obj_tag(x_35) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_36; lean_object* x_37; lean_dec(x_6); lean_dec(x_2); -x_18 = lean_box(0); -x_19 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__1___boxed), 7, 2); -lean_closure_set(x_19, 0, x_3); -lean_closure_set(x_19, 1, x_18); -x_20 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_15, x_19, x_13); -if (lean_obj_tag(x_20) == 0) -{ -uint8_t x_21; -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_20, 0); -x_23 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_20, 0, x_23); -return x_20; +x_36 = lean_box(0); +x_37 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__1___boxed), 7, 2); +lean_closure_set(x_37, 0, x_4); +lean_closure_set(x_37, 1, x_36); +x_16 = x_37; +goto block_33; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = lean_ctor_get(x_20, 0); -x_25 = lean_ctor_get(x_20, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_20); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_24); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_25); -return x_27; -} -} -else -{ -uint8_t x_28; -x_28 = !lean_is_exclusive(x_20); -if (x_28 == 0) -{ -return x_20; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_20, 0); -x_30 = lean_ctor_get(x_20, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_20); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -} -else -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_ctor_get(x_17, 0); -lean_inc(x_32); -lean_dec(x_17); -x_33 = l_Lean_Elab_Info_range_x3f(x_32); -lean_dec(x_32); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_6); -lean_dec(x_2); -x_34 = lean_box(0); -x_35 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__1___boxed), 7, 2); -lean_closure_set(x_35, 0, x_3); -lean_closure_set(x_35, 1, x_34); -x_36 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_15, x_35, x_13); -if (lean_obj_tag(x_36) == 0) -{ -uint8_t x_37; -x_37 = !lean_is_exclusive(x_36); -if (x_37 == 0) -{ lean_object* x_38; lean_object* x_39; -x_38 = lean_ctor_get(x_36, 0); -x_39 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_36, 0, x_39); -return x_36; -} -else +x_38 = lean_ctor_get(x_35, 0); +lean_inc(x_38); +lean_dec(x_35); +x_39 = l_Lean_Elab_Info_range_x3f(x_38); +lean_dec(x_38); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_36, 0); -x_41 = lean_ctor_get(x_36, 1); -lean_inc(x_41); -lean_inc(x_40); -lean_dec(x_36); -x_42 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_42, 0, x_40); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_41); -return x_43; -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_36); -if (x_44 == 0) -{ -return x_36; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_36, 0); -x_46 = lean_ctor_get(x_36, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_36); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; -} -} -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -lean_dec(x_3); -x_48 = lean_ctor_get(x_33, 0); -lean_inc(x_48); -lean_dec(x_33); -x_49 = l_String_Range_toLspRange(x_6, x_48); -lean_dec(x_48); -x_50 = l_Lean_Elab_Info_range_x3f(x_2); +lean_object* x_40; lean_object* x_41; +lean_dec(x_6); lean_dec(x_2); -if (lean_obj_tag(x_50) == 0) +x_40 = lean_box(0); +x_41 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__1___boxed), 7, 2); +lean_closure_set(x_41, 0, x_4); +lean_closure_set(x_41, 1, x_40); +x_16 = x_41; +goto block_33; +} +else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_4); +x_42 = lean_ctor_get(x_39, 0); +lean_inc(x_42); +lean_dec(x_39); +x_43 = l_String_Range_toLspRange(x_6, x_42); +lean_dec(x_42); +x_44 = l_Lean_Elab_Info_range_x3f(x_2); +lean_dec(x_2); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_dec(x_6); -x_51 = lean_ctor_get(x_7, 0); -x_52 = lean_box(0); -lean_inc(x_49); -lean_inc(x_51); -x_53 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_51); -lean_ctor_set(x_53, 2, x_49); -lean_ctor_set(x_53, 3, x_49); -x_54 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; -x_55 = lean_array_push(x_54, x_53); -x_56 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); -lean_closure_set(x_56, 0, x_55); -x_57 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_15, x_56, x_13); -if (lean_obj_tag(x_57) == 0) -{ -uint8_t x_58; -x_58 = !lean_is_exclusive(x_57); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_57, 0); -x_60 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_57, 0, x_60); -return x_57; +x_45 = lean_ctor_get(x_7, 0); +x_46 = lean_box(0); +lean_inc(x_43); +lean_inc(x_45); +x_47 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set(x_47, 1, x_45); +lean_ctor_set(x_47, 2, x_43); +lean_ctor_set(x_47, 3, x_43); +x_48 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; +x_49 = lean_array_push(x_48, x_47); +x_50 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); +lean_closure_set(x_50, 0, x_49); +x_16 = x_50; +goto block_33; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_61 = lean_ctor_get(x_57, 0); -x_62 = lean_ctor_get(x_57, 1); -lean_inc(x_62); -lean_inc(x_61); -lean_dec(x_57); -x_63 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_63, 0, x_61); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_63); -lean_ctor_set(x_64, 1, x_62); -return x_64; -} -} -else +uint8_t x_51; +x_51 = !lean_is_exclusive(x_44); +if (x_51 == 0) { -uint8_t x_65; -x_65 = !lean_is_exclusive(x_57); -if (x_65 == 0) -{ -return x_57; -} -else -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_57, 0); -x_67 = lean_ctor_get(x_57, 1); -lean_inc(x_67); -lean_inc(x_66); -lean_dec(x_57); -x_68 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -return x_68; -} -} -} -else -{ -uint8_t x_69; -x_69 = !lean_is_exclusive(x_50); -if (x_69 == 0) -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_70 = lean_ctor_get(x_7, 0); -x_71 = lean_ctor_get(x_50, 0); -x_72 = l_String_Range_toLspRange(x_6, x_71); -lean_dec(x_71); +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_52 = lean_ctor_get(x_7, 0); +x_53 = lean_ctor_get(x_44, 0); +x_54 = l_String_Range_toLspRange(x_6, x_53); +lean_dec(x_53); lean_dec(x_6); -lean_ctor_set(x_50, 0, x_72); -lean_inc(x_49); -lean_inc(x_70); -x_73 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_73, 0, x_50); -lean_ctor_set(x_73, 1, x_70); -lean_ctor_set(x_73, 2, x_49); -lean_ctor_set(x_73, 3, x_49); -x_74 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; -x_75 = lean_array_push(x_74, x_73); -x_76 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); -lean_closure_set(x_76, 0, x_75); -x_77 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_15, x_76, x_13); -if (lean_obj_tag(x_77) == 0) -{ -uint8_t x_78; -x_78 = !lean_is_exclusive(x_77); -if (x_78 == 0) -{ -lean_object* x_79; lean_object* x_80; -x_79 = lean_ctor_get(x_77, 0); -x_80 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_80, 0, x_79); -lean_ctor_set(x_77, 0, x_80); -return x_77; +lean_ctor_set(x_44, 0, x_54); +lean_inc(x_43); +lean_inc(x_52); +x_55 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_55, 0, x_44); +lean_ctor_set(x_55, 1, x_52); +lean_ctor_set(x_55, 2, x_43); +lean_ctor_set(x_55, 3, x_43); +x_56 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; +x_57 = lean_array_push(x_56, x_55); +x_58 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); +lean_closure_set(x_58, 0, x_57); +x_16 = x_58; +goto block_33; } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_81 = lean_ctor_get(x_77, 0); -x_82 = lean_ctor_get(x_77, 1); -lean_inc(x_82); -lean_inc(x_81); -lean_dec(x_77); -x_83 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_83, 0, x_81); -x_84 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_84, 0, x_83); -lean_ctor_set(x_84, 1, x_82); -return x_84; -} -} -else -{ -uint8_t x_85; -x_85 = !lean_is_exclusive(x_77); -if (x_85 == 0) -{ -return x_77; -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_86 = lean_ctor_get(x_77, 0); -x_87 = lean_ctor_get(x_77, 1); -lean_inc(x_87); -lean_inc(x_86); -lean_dec(x_77); -x_88 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_88, 0, x_86); -lean_ctor_set(x_88, 1, x_87); -return x_88; -} -} -} -else -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_89 = lean_ctor_get(x_7, 0); -x_90 = lean_ctor_get(x_50, 0); -lean_inc(x_90); -lean_dec(x_50); -x_91 = l_String_Range_toLspRange(x_6, x_90); -lean_dec(x_90); +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_59 = lean_ctor_get(x_7, 0); +x_60 = lean_ctor_get(x_44, 0); +lean_inc(x_60); +lean_dec(x_44); +x_61 = l_String_Range_toLspRange(x_6, x_60); +lean_dec(x_60); lean_dec(x_6); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_91); -lean_inc(x_49); -lean_inc(x_89); -x_93 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_89); -lean_ctor_set(x_93, 2, x_49); -lean_ctor_set(x_93, 3, x_49); -x_94 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; -x_95 = lean_array_push(x_94, x_93); -x_96 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); -lean_closure_set(x_96, 0, x_95); -x_97 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_15, x_96, x_13); -if (lean_obj_tag(x_97) == 0) +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_61); +lean_inc(x_43); +lean_inc(x_59); +x_63 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_59); +lean_ctor_set(x_63, 2, x_43); +lean_ctor_set(x_63, 3, x_43); +x_64 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; +x_65 = lean_array_push(x_64, x_63); +x_66 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__9___boxed), 6, 1); +lean_closure_set(x_66, 0, x_65); +x_16 = x_66; +goto block_33; +} +} +} +} +block_33: { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_98 = lean_ctor_get(x_97, 0); -lean_inc(x_98); -x_99 = lean_ctor_get(x_97, 1); -lean_inc(x_99); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - lean_ctor_release(x_97, 1); - x_100 = x_97; -} else { - lean_dec_ref(x_97); - x_100 = lean_box(0); -} -x_101 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_101, 0, x_98); -if (lean_is_scalar(x_100)) { - x_102 = lean_alloc_ctor(0, 2, 0); -} else { - x_102 = x_100; -} -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_99); -return x_102; +lean_object* x_17; +x_17 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_3, x_15, x_16, x_13); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +return x_17; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; -x_103 = lean_ctor_get(x_97, 0); -lean_inc(x_103); -x_104 = lean_ctor_get(x_97, 1); -lean_inc(x_104); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - lean_ctor_release(x_97, 1); - x_105 = x_97; -} else { - lean_dec_ref(x_97); - x_105 = lean_box(0); -} -if (lean_is_scalar(x_105)) { - x_106 = lean_alloc_ctor(1, 2, 0); -} else { - x_106 = x_105; -} -lean_ctor_set(x_106, 0, x_103); -lean_ctor_set(x_106, 1, x_104); -return x_106; +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_17, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_17); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; } } +else +{ +uint8_t x_22; +x_22 = !lean_is_exclusive(x_17); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_17, 0); +x_24 = lean_io_error_to_string(x_23); +x_25 = 4; +x_26 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set_uint8(x_26, sizeof(void*)*1, x_25); +lean_ctor_set(x_17, 0, x_26); +return x_17; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; lean_object* x_31; lean_object* x_32; +x_27 = lean_ctor_get(x_17, 0); +x_28 = lean_ctor_get(x_17, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_17); +x_29 = lean_io_error_to_string(x_27); +x_30 = 4; +x_31 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set_uint8(x_31, sizeof(void*)*1, x_30); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_28); +return x_32; } } } } case 4: { -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_dec(x_12); -lean_dec(x_4); +lean_dec(x_5); lean_dec(x_1); -x_107 = lean_ctor_get(x_10, 0); -lean_inc(x_107); +x_67 = lean_ctor_get(x_10, 0); +lean_inc(x_67); lean_dec(x_10); -x_108 = l_Lean_Elab_Info_lctx(x_2); -x_109 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__3___boxed), 11, 6); -lean_closure_set(x_109, 0, x_107); -lean_closure_set(x_109, 1, x_3); -lean_closure_set(x_109, 2, x_2); -lean_closure_set(x_109, 3, x_6); -lean_closure_set(x_109, 4, x_8); -lean_closure_set(x_109, 5, x_9); -x_110 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_5, x_108, x_109, x_13); -if (lean_obj_tag(x_110) == 0) +x_68 = l_Lean_Elab_Info_lctx(x_2); +x_69 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__3___boxed), 11, 6); +lean_closure_set(x_69, 0, x_67); +lean_closure_set(x_69, 1, x_4); +lean_closure_set(x_69, 2, x_2); +lean_closure_set(x_69, 3, x_6); +lean_closure_set(x_69, 4, x_8); +lean_closure_set(x_69, 5, x_9); +x_70 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_3, x_68, x_69, x_13); +if (lean_obj_tag(x_70) == 0) { -uint8_t x_111; -x_111 = !lean_is_exclusive(x_110); -if (x_111 == 0) +uint8_t x_71; +x_71 = !lean_is_exclusive(x_70); +if (x_71 == 0) { -lean_object* x_112; lean_object* x_113; -x_112 = lean_ctor_get(x_110, 0); -x_113 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_113, 0, x_112); -lean_ctor_set(x_110, 0, x_113); -return x_110; +return x_70; } else { -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; -x_114 = lean_ctor_get(x_110, 0); -x_115 = lean_ctor_get(x_110, 1); -lean_inc(x_115); -lean_inc(x_114); -lean_dec(x_110); -x_116 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_116, 0, x_114); -x_117 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_117, 0, x_116); -lean_ctor_set(x_117, 1, x_115); -return x_117; +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_70, 0); +x_73 = lean_ctor_get(x_70, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_70); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +return x_74; } } else { -uint8_t x_118; -x_118 = !lean_is_exclusive(x_110); -if (x_118 == 0) +uint8_t x_75; +x_75 = !lean_is_exclusive(x_70); +if (x_75 == 0) { -return x_110; +lean_object* x_76; lean_object* x_77; uint8_t x_78; lean_object* x_79; +x_76 = lean_ctor_get(x_70, 0); +x_77 = lean_io_error_to_string(x_76); +x_78 = 4; +x_79 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set_uint8(x_79, sizeof(void*)*1, x_78); +lean_ctor_set(x_70, 0, x_79); +return x_70; } else { -lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_119 = lean_ctor_get(x_110, 0); -x_120 = lean_ctor_get(x_110, 1); -lean_inc(x_120); -lean_inc(x_119); -lean_dec(x_110); -x_121 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_121, 0, x_119); -lean_ctor_set(x_121, 1, x_120); -return x_121; +lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; lean_object* x_84; lean_object* x_85; +x_80 = lean_ctor_get(x_70, 0); +x_81 = lean_ctor_get(x_70, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_70); +x_82 = lean_io_error_to_string(x_80); +x_83 = 4; +x_84 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set_uint8(x_84, sizeof(void*)*1, x_83); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_84); +lean_ctor_set(x_85, 1, x_81); +return x_85; } } } default: { -lean_object* x_122; lean_object* x_123; +lean_object* x_86; lean_object* x_87; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); lean_dec(x_2); -x_122 = lean_box(0); -x_123 = lean_apply_3(x_1, x_122, x_12, x_13); -return x_123; +x_86 = lean_box(0); +x_87 = lean_apply_3(x_1, x_86, x_12, x_13); +return x_87; } } } @@ -3928,91 +3939,92 @@ lean_inc(x_12); x_13 = l_Lean_Elab_InfoTree_hoverableInfoAt_x3f(x_12, x_2); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; +lean_object* x_14; lean_dec(x_12); lean_dec(x_11); +lean_dec(x_9); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_14 = lean_box(0); -x_15 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_1, x_14, x_9, x_10); -lean_dec(x_9); -return x_15; +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_10); +return x_14; } else { -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_13, 0); -lean_inc(x_16); +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); lean_dec(x_13); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 1) +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 1) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; uint8_t x_24; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; uint8_t x_23; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +lean_dec(x_15); x_18 = lean_ctor_get(x_16, 0); lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -x_20 = lean_box(x_3); +x_19 = lean_box(x_3); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_1); -lean_inc(x_18); lean_inc(x_17); -x_21 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__7___boxed), 11, 8); -lean_closure_set(x_21, 0, x_17); -lean_closure_set(x_21, 1, x_11); -lean_closure_set(x_21, 2, x_20); -lean_closure_set(x_21, 3, x_18); -lean_closure_set(x_21, 4, x_1); -lean_closure_set(x_21, 5, x_4); -lean_closure_set(x_21, 6, x_5); -lean_closure_set(x_21, 7, x_6); -x_22 = lean_ctor_get(x_19, 3); -lean_inc(x_22); -lean_dec(x_19); -x_23 = 2; -x_24 = l___private_Lean_Server_FileWorker_RequestHandling_0__Lean_Server_FileWorker_beqGoToKind____x40_Lean_Server_FileWorker_RequestHandling___hyg_338_(x_3, x_23); -if (x_24 == 0) +lean_inc(x_16); +x_20 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__7___boxed), 11, 8); +lean_closure_set(x_20, 0, x_16); +lean_closure_set(x_20, 1, x_11); +lean_closure_set(x_20, 2, x_19); +lean_closure_set(x_20, 3, x_17); +lean_closure_set(x_20, 4, x_1); +lean_closure_set(x_20, 5, x_4); +lean_closure_set(x_20, 6, x_5); +lean_closure_set(x_20, 7, x_6); +x_21 = lean_ctor_get(x_18, 3); +lean_inc(x_21); +lean_dec(x_18); +x_22 = 2; +x_23 = l___private_Lean_Server_FileWorker_RequestHandling_0__Lean_Server_FileWorker_beqGoToKind____x40_Lean_Server_FileWorker_RequestHandling___hyg_338_(x_3, x_22); +if (x_23 == 0) { -lean_object* x_25; lean_object* x_26; -x_25 = lean_box(0); -x_26 = l_Lean_Server_FileWorker_handleDefinition___lambda__10(x_21, x_17, x_1, x_12, x_18, x_4, x_7, x_5, x_6, x_22, x_25, x_9, x_10); +lean_object* x_24; lean_object* x_25; +x_24 = lean_box(0); +x_25 = l_Lean_Server_FileWorker_handleDefinition___lambda__10(x_20, x_16, x_17, x_1, x_12, x_4, x_7, x_5, x_6, x_21, x_24, x_9, x_10); lean_dec(x_7); -lean_dec(x_18); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = l_Lean_Elab_Info_lctx(x_17); -x_28 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__11), 6, 1); -lean_closure_set(x_28, 0, x_22); -x_29 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_18, x_27, x_28, x_10); -if (lean_obj_tag(x_29) == 0) -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_30 = lean_ctor_get(x_29, 0); -lean_inc(x_30); -x_31 = lean_ctor_get(x_29, 1); -lean_inc(x_31); -lean_dec(x_29); -x_32 = lean_box(0); -x_33 = l_Lean_Server_FileWorker_handleDefinition___lambda__10(x_21, x_17, x_1, x_12, x_18, x_4, x_7, x_5, x_6, x_30, x_32, x_9, x_31); -lean_dec(x_7); -lean_dec(x_18); -return x_33; -} -else -{ -uint8_t x_34; -lean_dec(x_21); -lean_dec(x_18); lean_dec(x_17); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = l_Lean_Elab_Info_lctx(x_16); +x_27 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__11), 6, 1); +lean_closure_set(x_27, 0, x_21); +x_28 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_17, x_26, x_27, x_10); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = lean_box(0); +x_32 = l_Lean_Server_FileWorker_handleDefinition___lambda__10(x_20, x_16, x_17, x_1, x_12, x_4, x_7, x_5, x_6, x_29, x_31, x_9, x_30); +lean_dec(x_7); +lean_dec(x_17); +return x_32; +} +else +{ +uint8_t x_33; +lean_dec(x_20); +lean_dec(x_17); +lean_dec(x_16); lean_dec(x_12); lean_dec(x_9); lean_dec(x_7); @@ -4020,38 +4032,51 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_34 = !lean_is_exclusive(x_29); -if (x_34 == 0) +x_33 = !lean_is_exclusive(x_28); +if (x_33 == 0) { -return x_29; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_29, 0); -x_36 = lean_ctor_get(x_29, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_29); -x_37 = lean_alloc_ctor(1, 2, 0); +lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_28, 0); +x_35 = lean_io_error_to_string(x_34); +x_36 = 4; +x_37 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_ctor_set_uint8(x_37, sizeof(void*)*1, x_36); +lean_ctor_set(x_28, 0, x_37); +return x_28; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; +x_38 = lean_ctor_get(x_28, 0); +x_39 = lean_ctor_get(x_28, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_28); +x_40 = lean_io_error_to_string(x_38); +x_41 = 4; +x_42 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set_uint8(x_42, sizeof(void*)*1, x_41); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_39); +return x_43; } } } } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_dec(x_12); lean_dec(x_7); -x_38 = lean_ctor_get(x_16, 0); -lean_inc(x_38); -lean_dec(x_16); -x_39 = lean_box(0); -x_40 = l_Lean_Server_FileWorker_handleDefinition___lambda__7(x_17, x_11, x_3, x_38, x_1, x_4, x_5, x_6, x_39, x_9, x_10); -return x_40; +x_44 = lean_ctor_get(x_15, 0); +lean_inc(x_44); +lean_dec(x_15); +x_45 = lean_box(0); +x_46 = l_Lean_Server_FileWorker_handleDefinition___lambda__7(x_16, x_11, x_3, x_44, x_1, x_4, x_5, x_6, x_45, x_9, x_10); +return x_46; } } } @@ -4069,40 +4094,37 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDefinition(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; x_5 = l_Lean_Server_RequestM_readDoc(x_3, x_4); x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); x_7 = lean_ctor_get(x_6, 0); lean_inc(x_7); -lean_dec(x_6); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_5, 1); lean_inc(x_8); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); lean_dec(x_5); -x_10 = lean_ctor_get(x_8, 2); +x_9 = lean_ctor_get(x_7, 2); +lean_inc(x_9); +x_10 = lean_ctor_get(x_2, 1); lean_inc(x_10); -x_11 = lean_ctor_get(x_2, 1); +x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); lean_inc(x_11); -x_12 = l_Lean_FileMap_lspPosToUtf8Pos(x_10, x_11); -lean_inc(x_12); -x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); -lean_closure_set(x_13, 0, x_12); -x_14 = l_Lean_Server_FileWorker_handleCompletion___closed__1; -x_15 = lean_box(x_1); +x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); +lean_closure_set(x_12, 0, x_11); +x_13 = l_Lean_Server_FileWorker_handleCompletion___closed__1; +x_14 = lean_box(x_1); lean_inc(x_3); -x_16 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__12___boxed), 10, 7); -lean_closure_set(x_16, 0, x_14); -lean_closure_set(x_16, 1, x_12); -lean_closure_set(x_16, 2, x_15); -lean_closure_set(x_16, 3, x_10); -lean_closure_set(x_16, 4, x_8); -lean_closure_set(x_16, 5, x_3); -lean_closure_set(x_16, 6, x_2); -x_17 = l_Lean_Server_FileWorker_handleDefinition___closed__1; -x_18 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_13, x_17, x_16, x_3, x_9); -return x_18; +x_15 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDefinition___lambda__12___boxed), 10, 7); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_11); +lean_closure_set(x_15, 2, x_14); +lean_closure_set(x_15, 3, x_9); +lean_closure_set(x_15, 4, x_7); +lean_closure_set(x_15, 5, x_3); +lean_closure_set(x_15, 6, x_2); +x_16 = l_Lean_Server_FileWorker_handleDefinition___closed__1; +x_17 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_6, x_12, x_16, x_15, x_3, x_8); +return x_17; } } LEAN_EXPORT lean_object* l_Lean_findModuleOf_x3f___at_Lean_Server_FileWorker_handleDefinition___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { @@ -4240,7 +4262,7 @@ lean_object* x_14; x_14 = l_Lean_Server_FileWorker_handleDefinition___lambda__10(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_11); lean_dec(x_7); -lean_dec(x_5); +lean_dec(x_3); return x_14; } } @@ -4554,36 +4576,26 @@ return x_51; static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__2() { -_start: -{ lean_object* x_1; x_1 = l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); return x_1; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__3() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__2; +x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__1; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__3; +x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__2; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -4591,7 +4603,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -4600,23 +4612,23 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5; +x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6() { _start: { size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 5; -x_2 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6; -x_3 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5; +x_2 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__5; +x_3 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4; x_4 = lean_unsigned_to_nat(0u); x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); lean_ctor_set(x_5, 0, x_2); @@ -4627,12 +4639,12 @@ lean_ctor_set_usize(x_5, 4, x_1); return x_5; } } -static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8() { +static lean_object* _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__4; -x_2 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_1 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__3; +x_2 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -4645,7 +4657,7 @@ _start: if (lean_obj_tag(x_1) == 0) { lean_object* x_4; lean_object* x_5; -x_4 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__1; +x_4 = lean_box(0); x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_4); lean_ctor_set(x_5, 1, x_3); @@ -4653,461 +4665,817 @@ return x_5; } else { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_43; +lean_object* x_6; uint8_t x_7; x_6 = lean_ctor_get(x_1, 0); lean_inc(x_6); -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - x_8 = x_1; -} else { - lean_dec_ref(x_1); - x_8 = lean_box(0); -} -x_43 = lean_ctor_get_uint8(x_6, sizeof(void*)*2); -if (x_43 == 0) +x_7 = lean_ctor_get_uint8(x_6, sizeof(void*)*2); +if (x_7 == 0) { -lean_object* x_44; lean_object* x_45; uint8_t x_46; -x_44 = lean_ctor_get(x_6, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_6, 1); -lean_inc(x_45); -lean_dec(x_6); -x_46 = !lean_is_exclusive(x_44); -if (x_46 == 0) +lean_object* x_8; uint8_t x_9; +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = !lean_is_exclusive(x_1); +if (x_9 == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_47 = lean_ctor_get(x_44, 2); -lean_dec(x_47); -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -lean_ctor_set(x_44, 2, x_48); -x_49 = lean_ctor_get(x_45, 2); -lean_inc(x_49); -lean_dec(x_45); -x_50 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); -lean_closure_set(x_50, 0, x_49); -x_51 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8; -x_52 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_44, x_51, x_50, x_3); -lean_dec(x_44); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -lean_dec(x_52); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_53); -x_9 = x_55; -x_10 = x_54; -goto block_42; -} -else -{ -uint8_t x_56; -lean_dec(x_8); -lean_dec(x_7); -x_56 = !lean_is_exclusive(x_52); -if (x_56 == 0) -{ -return x_52; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_52, 0); -x_58 = lean_ctor_get(x_52, 1); -lean_inc(x_58); -lean_inc(x_57); -lean_dec(x_52); -x_59 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -return x_59; -} -} -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_60 = lean_ctor_get(x_44, 0); -x_61 = lean_ctor_get(x_44, 1); -x_62 = lean_ctor_get(x_44, 3); -x_63 = lean_ctor_get(x_44, 4); -x_64 = lean_ctor_get(x_44, 5); -lean_inc(x_64); -lean_inc(x_63); -lean_inc(x_62); -lean_inc(x_61); -lean_inc(x_60); -lean_dec(x_44); -x_65 = lean_ctor_get(x_45, 1); -lean_inc(x_65); -x_66 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_66, 0, x_60); -lean_ctor_set(x_66, 1, x_61); -lean_ctor_set(x_66, 2, x_65); -lean_ctor_set(x_66, 3, x_62); -lean_ctor_set(x_66, 4, x_63); -lean_ctor_set(x_66, 5, x_64); -x_67 = lean_ctor_get(x_45, 2); -lean_inc(x_67); -lean_dec(x_45); -x_68 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); -lean_closure_set(x_68, 0, x_67); -x_69 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8; -x_70 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_66, x_69, x_68, x_3); -lean_dec(x_66); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_ctor_get(x_70, 1); -lean_inc(x_72); -lean_dec(x_70); -x_73 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_73, 0, x_71); -x_9 = x_73; -x_10 = x_72; -goto block_42; -} -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_8); -lean_dec(x_7); -x_74 = lean_ctor_get(x_70, 0); -lean_inc(x_74); -x_75 = lean_ctor_get(x_70, 1); -lean_inc(x_75); -if (lean_is_exclusive(x_70)) { - lean_ctor_release(x_70, 0); - lean_ctor_release(x_70, 1); - x_76 = x_70; -} else { - lean_dec_ref(x_70); - x_76 = lean_box(0); -} -if (lean_is_scalar(x_76)) { - x_77 = lean_alloc_ctor(1, 2, 0); -} else { - x_77 = x_76; -} -lean_ctor_set(x_77, 0, x_74); -lean_ctor_set(x_77, 1, x_75); -return x_77; -} -} -} -else -{ -lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_78 = lean_ctor_get(x_6, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_6, 1); -lean_inc(x_79); -lean_dec(x_6); -x_80 = !lean_is_exclusive(x_78); -if (x_80 == 0) -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_81 = lean_ctor_get(x_78, 2); -lean_dec(x_81); -x_82 = lean_ctor_get(x_79, 3); -lean_inc(x_82); -lean_ctor_set(x_78, 2, x_82); -x_83 = lean_ctor_get(x_79, 4); -lean_inc(x_83); -lean_dec(x_79); -x_84 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); -lean_closure_set(x_84, 0, x_83); -x_85 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8; -x_86 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_78, x_85, x_84, x_3); -lean_dec(x_78); -if (lean_obj_tag(x_86) == 0) -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_86, 0); -lean_inc(x_87); -x_88 = lean_ctor_get(x_86, 1); -lean_inc(x_88); -lean_dec(x_86); -x_89 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_89, 0, x_87); -x_9 = x_89; -x_10 = x_88; -goto block_42; -} -else -{ -uint8_t x_90; -lean_dec(x_8); -lean_dec(x_7); -x_90 = !lean_is_exclusive(x_86); -if (x_90 == 0) -{ -return x_86; -} -else -{ -lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_91 = lean_ctor_get(x_86, 0); -x_92 = lean_ctor_get(x_86, 1); -lean_inc(x_92); -lean_inc(x_91); -lean_dec(x_86); -x_93 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_93, 0, x_91); -lean_ctor_set(x_93, 1, x_92); -return x_93; -} -} -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_94 = lean_ctor_get(x_78, 0); -x_95 = lean_ctor_get(x_78, 1); -x_96 = lean_ctor_get(x_78, 3); -x_97 = lean_ctor_get(x_78, 4); -x_98 = lean_ctor_get(x_78, 5); -lean_inc(x_98); -lean_inc(x_97); -lean_inc(x_96); -lean_inc(x_95); -lean_inc(x_94); -lean_dec(x_78); -x_99 = lean_ctor_get(x_79, 3); -lean_inc(x_99); -x_100 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_100, 0, x_94); -lean_ctor_set(x_100, 1, x_95); -lean_ctor_set(x_100, 2, x_99); -lean_ctor_set(x_100, 3, x_96); -lean_ctor_set(x_100, 4, x_97); -lean_ctor_set(x_100, 5, x_98); -x_101 = lean_ctor_get(x_79, 4); -lean_inc(x_101); -lean_dec(x_79); -x_102 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); -lean_closure_set(x_102, 0, x_101); -x_103 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8; -x_104 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_100, x_103, x_102, x_3); -lean_dec(x_100); -if (lean_obj_tag(x_104) == 0) -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; -x_105 = lean_ctor_get(x_104, 0); -lean_inc(x_105); -x_106 = lean_ctor_get(x_104, 1); -lean_inc(x_106); -lean_dec(x_104); -x_107 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_107, 0, x_105); -x_9 = x_107; -x_10 = x_106; -goto block_42; -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_8); -lean_dec(x_7); -x_108 = lean_ctor_get(x_104, 0); -lean_inc(x_108); -x_109 = lean_ctor_get(x_104, 1); -lean_inc(x_109); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_110 = x_104; -} else { - lean_dec_ref(x_104); - x_110 = lean_box(0); -} -if (lean_is_scalar(x_110)) { - x_111 = lean_alloc_ctor(1, 2, 0); -} else { - x_111 = x_110; -} -lean_ctor_set(x_111, 0, x_108); -lean_ctor_set(x_111, 1, x_109); -return x_111; -} -} -} -block_42: -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); -lean_inc(x_11); -lean_dec(x_9); -x_12 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_7, x_2, x_10); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_10 = lean_ctor_get(x_1, 1); +x_11 = lean_ctor_get(x_1, 0); lean_dec(x_11); -lean_dec(x_8); -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) +x_12 = lean_ctor_get(x_6, 1); +lean_inc(x_12); +lean_dec(x_6); +x_13 = !lean_is_exclusive(x_8); +if (x_13 == 0) { -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_8, 2); +lean_dec(x_14); +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_ctor_set(x_8, 2, x_15); +x_16 = lean_ctor_get(x_12, 2); +lean_inc(x_16); lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); +x_17 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_17, 0, x_16); +x_18 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_19 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_8, x_18, x_17, x_3); +lean_dec(x_8); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_19, 0); lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_10, x_2, x_21); +if (lean_obj_tag(x_22) == 0) +{ +uint8_t x_23; +x_23 = !lean_is_exclusive(x_22); +if (x_23 == 0) +{ +lean_object* x_24; +x_24 = lean_ctor_get(x_22, 0); +lean_ctor_set(x_1, 1, x_24); +lean_ctor_set(x_1, 0, x_20); +lean_ctor_set(x_22, 0, x_1); +return x_22; } -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_22, 0); +x_26 = lean_ctor_get(x_22, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_22); +lean_ctor_set(x_1, 1, x_25); +lean_ctor_set(x_1, 0, x_20); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_1); +lean_ctor_set(x_27, 1, x_26); +return x_27; } } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) +uint8_t x_28; +lean_dec(x_20); +lean_free_object(x_1); +x_28 = !lean_is_exclusive(x_22); +if (x_28 == 0) { -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_13, 0); -if (lean_is_scalar(x_8)) { - x_28 = lean_alloc_ctor(1, 2, 0); -} else { - x_28 = x_8; -} -lean_ctor_set(x_28, 0, x_11); -lean_ctor_set(x_28, 1, x_27); -lean_ctor_set(x_13, 0, x_28); -return x_12; +return x_22; } else { lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_13, 0); +x_29 = lean_ctor_get(x_22, 0); +x_30 = lean_ctor_get(x_22, 1); +lean_inc(x_30); lean_inc(x_29); -lean_dec(x_13); -if (lean_is_scalar(x_8)) { - x_30 = lean_alloc_ctor(1, 2, 0); -} else { - x_30 = x_8; -} -lean_ctor_set(x_30, 0, x_11); -lean_ctor_set(x_30, 1, x_29); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_12, 0, x_31); -return x_12; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_32 = lean_ctor_get(x_12, 1); -lean_inc(x_32); -lean_dec(x_12); -x_33 = lean_ctor_get(x_13, 0); -lean_inc(x_33); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_34 = x_13; -} else { - lean_dec_ref(x_13); - x_34 = lean_box(0); -} -if (lean_is_scalar(x_8)) { - x_35 = lean_alloc_ctor(1, 2, 0); -} else { - x_35 = x_8; -} -lean_ctor_set(x_35, 0, x_11); -lean_ctor_set(x_35, 1, x_33); -if (lean_is_scalar(x_34)) { - x_36 = lean_alloc_ctor(1, 1, 0); -} else { - x_36 = x_34; -} -lean_ctor_set(x_36, 0, x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_32); -return x_37; +lean_dec(x_22); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +return x_31; } } } else { -uint8_t x_38; -lean_dec(x_11); -lean_dec(x_8); -x_38 = !lean_is_exclusive(x_12); -if (x_38 == 0) +uint8_t x_32; +lean_free_object(x_1); +lean_dec(x_10); +x_32 = !lean_is_exclusive(x_19); +if (x_32 == 0) { -return x_12; +lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_19, 0); +x_34 = lean_io_error_to_string(x_33); +x_35 = 4; +x_36 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set_uint8(x_36, sizeof(void*)*1, x_35); +lean_ctor_set(x_19, 0, x_36); +return x_19; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_12, 0); -x_40 = lean_ctor_get(x_12, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_12); -x_41 = lean_alloc_ctor(1, 2, 0); +lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; lean_object* x_41; lean_object* x_42; +x_37 = lean_ctor_get(x_19, 0); +x_38 = lean_ctor_get(x_19, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_19); +x_39 = lean_io_error_to_string(x_37); +x_40 = 4; +x_41 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; +lean_ctor_set_uint8(x_41, sizeof(void*)*1, x_40); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_38); +return x_42; +} +} +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_43 = lean_ctor_get(x_8, 0); +x_44 = lean_ctor_get(x_8, 1); +x_45 = lean_ctor_get(x_8, 3); +x_46 = lean_ctor_get(x_8, 4); +x_47 = lean_ctor_get(x_8, 5); +lean_inc(x_47); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_8); +x_48 = lean_ctor_get(x_12, 1); +lean_inc(x_48); +x_49 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_49, 0, x_43); +lean_ctor_set(x_49, 1, x_44); +lean_ctor_set(x_49, 2, x_48); +lean_ctor_set(x_49, 3, x_45); +lean_ctor_set(x_49, 4, x_46); +lean_ctor_set(x_49, 5, x_47); +x_50 = lean_ctor_get(x_12, 2); +lean_inc(x_50); +lean_dec(x_12); +x_51 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_51, 0, x_50); +x_52 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_53 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_49, x_52, x_51, x_3); +lean_dec(x_49); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +x_56 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_10, x_2, x_55); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_59 = x_56; +} else { + lean_dec_ref(x_56); + x_59 = lean_box(0); +} +lean_ctor_set(x_1, 1, x_57); +lean_ctor_set(x_1, 0, x_54); +if (lean_is_scalar(x_59)) { + x_60 = lean_alloc_ctor(0, 2, 0); +} else { + x_60 = x_59; +} +lean_ctor_set(x_60, 0, x_1); +lean_ctor_set(x_60, 1, x_58); +return x_60; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_54); +lean_free_object(x_1); +x_61 = lean_ctor_get(x_56, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_56, 1); +lean_inc(x_62); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_63 = x_56; +} else { + lean_dec_ref(x_56); + x_63 = lean_box(0); +} +if (lean_is_scalar(x_63)) { + x_64 = lean_alloc_ctor(1, 2, 0); +} else { + x_64 = x_63; +} +lean_ctor_set(x_64, 0, x_61); +lean_ctor_set(x_64, 1, x_62); +return x_64; +} +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; +lean_free_object(x_1); +lean_dec(x_10); +x_65 = lean_ctor_get(x_53, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_53, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_53)) { + lean_ctor_release(x_53, 0); + lean_ctor_release(x_53, 1); + x_67 = x_53; +} else { + lean_dec_ref(x_53); + x_67 = lean_box(0); +} +x_68 = lean_io_error_to_string(x_65); +x_69 = 4; +x_70 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set_uint8(x_70, sizeof(void*)*1, x_69); +if (lean_is_scalar(x_67)) { + x_71 = lean_alloc_ctor(1, 2, 0); +} else { + x_71 = x_67; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_66); +return x_71; +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_72 = lean_ctor_get(x_1, 1); +lean_inc(x_72); +lean_dec(x_1); +x_73 = lean_ctor_get(x_6, 1); +lean_inc(x_73); +lean_dec(x_6); +x_74 = lean_ctor_get(x_8, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_8, 1); +lean_inc(x_75); +x_76 = lean_ctor_get(x_8, 3); +lean_inc(x_76); +x_77 = lean_ctor_get(x_8, 4); +lean_inc(x_77); +x_78 = lean_ctor_get(x_8, 5); +lean_inc(x_78); +if (lean_is_exclusive(x_8)) { + lean_ctor_release(x_8, 0); + lean_ctor_release(x_8, 1); + lean_ctor_release(x_8, 2); + lean_ctor_release(x_8, 3); + lean_ctor_release(x_8, 4); + lean_ctor_release(x_8, 5); + x_79 = x_8; +} else { + lean_dec_ref(x_8); + x_79 = lean_box(0); +} +x_80 = lean_ctor_get(x_73, 1); +lean_inc(x_80); +if (lean_is_scalar(x_79)) { + x_81 = lean_alloc_ctor(0, 6, 0); +} else { + x_81 = x_79; +} +lean_ctor_set(x_81, 0, x_74); +lean_ctor_set(x_81, 1, x_75); +lean_ctor_set(x_81, 2, x_80); +lean_ctor_set(x_81, 3, x_76); +lean_ctor_set(x_81, 4, x_77); +lean_ctor_set(x_81, 5, x_78); +x_82 = lean_ctor_get(x_73, 2); +lean_inc(x_82); +lean_dec(x_73); +x_83 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_83, 0, x_82); +x_84 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_85 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_81, x_84, x_83, x_3); +lean_dec(x_81); +if (lean_obj_tag(x_85) == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_85, 0); +lean_inc(x_86); +x_87 = lean_ctor_get(x_85, 1); +lean_inc(x_87); +lean_dec(x_85); +x_88 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_72, x_2, x_87); +if (lean_obj_tag(x_88) == 0) +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_88)) { + lean_ctor_release(x_88, 0); + lean_ctor_release(x_88, 1); + x_91 = x_88; +} else { + lean_dec_ref(x_88); + x_91 = lean_box(0); +} +x_92 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_92, 0, x_86); +lean_ctor_set(x_92, 1, x_89); +if (lean_is_scalar(x_91)) { + x_93 = lean_alloc_ctor(0, 2, 0); +} else { + x_93 = x_91; +} +lean_ctor_set(x_93, 0, x_92); +lean_ctor_set(x_93, 1, x_90); +return x_93; +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_86); +x_94 = lean_ctor_get(x_88, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_88, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_88)) { + lean_ctor_release(x_88, 0); + lean_ctor_release(x_88, 1); + x_96 = x_88; +} else { + lean_dec_ref(x_88); + x_96 = lean_box(0); +} +if (lean_is_scalar(x_96)) { + x_97 = lean_alloc_ctor(1, 2, 0); +} else { + x_97 = x_96; +} +lean_ctor_set(x_97, 0, x_94); +lean_ctor_set(x_97, 1, x_95); +return x_97; +} +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; uint8_t x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_72); +x_98 = lean_ctor_get(x_85, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_85, 1); +lean_inc(x_99); +if (lean_is_exclusive(x_85)) { + lean_ctor_release(x_85, 0); + lean_ctor_release(x_85, 1); + x_100 = x_85; +} else { + lean_dec_ref(x_85); + x_100 = lean_box(0); +} +x_101 = lean_io_error_to_string(x_98); +x_102 = 4; +x_103 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set_uint8(x_103, sizeof(void*)*1, x_102); +if (lean_is_scalar(x_100)) { + x_104 = lean_alloc_ctor(1, 2, 0); +} else { + x_104 = x_100; +} +lean_ctor_set(x_104, 0, x_103); +lean_ctor_set(x_104, 1, x_99); +return x_104; +} +} +} +else +{ +lean_object* x_105; uint8_t x_106; +x_105 = lean_ctor_get(x_6, 0); +lean_inc(x_105); +x_106 = !lean_is_exclusive(x_1); +if (x_106 == 0) +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; uint8_t x_110; +x_107 = lean_ctor_get(x_1, 1); +x_108 = lean_ctor_get(x_1, 0); +lean_dec(x_108); +x_109 = lean_ctor_get(x_6, 1); +lean_inc(x_109); +lean_dec(x_6); +x_110 = !lean_is_exclusive(x_105); +if (x_110 == 0) +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_111 = lean_ctor_get(x_105, 2); +lean_dec(x_111); +x_112 = lean_ctor_get(x_109, 3); +lean_inc(x_112); +lean_ctor_set(x_105, 2, x_112); +x_113 = lean_ctor_get(x_109, 4); +lean_inc(x_113); +lean_dec(x_109); +x_114 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_114, 0, x_113); +x_115 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_116 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_105, x_115, x_114, x_3); +lean_dec(x_105); +if (lean_obj_tag(x_116) == 0) +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_116, 1); +lean_inc(x_118); +lean_dec(x_116); +x_119 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_107, x_2, x_118); +if (lean_obj_tag(x_119) == 0) +{ +uint8_t x_120; +x_120 = !lean_is_exclusive(x_119); +if (x_120 == 0) +{ +lean_object* x_121; +x_121 = lean_ctor_get(x_119, 0); +lean_ctor_set(x_1, 1, x_121); +lean_ctor_set(x_1, 0, x_117); +lean_ctor_set(x_119, 0, x_1); +return x_119; +} +else +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_122 = lean_ctor_get(x_119, 0); +x_123 = lean_ctor_get(x_119, 1); +lean_inc(x_123); +lean_inc(x_122); +lean_dec(x_119); +lean_ctor_set(x_1, 1, x_122); +lean_ctor_set(x_1, 0, x_117); +x_124 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_124, 0, x_1); +lean_ctor_set(x_124, 1, x_123); +return x_124; +} +} +else +{ +uint8_t x_125; +lean_dec(x_117); +lean_free_object(x_1); +x_125 = !lean_is_exclusive(x_119); +if (x_125 == 0) +{ +return x_119; +} +else +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_ctor_get(x_119, 0); +x_127 = lean_ctor_get(x_119, 1); +lean_inc(x_127); +lean_inc(x_126); +lean_dec(x_119); +x_128 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_128, 0, x_126); +lean_ctor_set(x_128, 1, x_127); +return x_128; +} +} +} +else +{ +uint8_t x_129; +lean_free_object(x_1); +lean_dec(x_107); +x_129 = !lean_is_exclusive(x_116); +if (x_129 == 0) +{ +lean_object* x_130; lean_object* x_131; uint8_t x_132; lean_object* x_133; +x_130 = lean_ctor_get(x_116, 0); +x_131 = lean_io_error_to_string(x_130); +x_132 = 4; +x_133 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_133, 0, x_131); +lean_ctor_set_uint8(x_133, sizeof(void*)*1, x_132); +lean_ctor_set(x_116, 0, x_133); +return x_116; +} +else +{ +lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; lean_object* x_138; lean_object* x_139; +x_134 = lean_ctor_get(x_116, 0); +x_135 = lean_ctor_get(x_116, 1); +lean_inc(x_135); +lean_inc(x_134); +lean_dec(x_116); +x_136 = lean_io_error_to_string(x_134); +x_137 = 4; +x_138 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_138, 0, x_136); +lean_ctor_set_uint8(x_138, sizeof(void*)*1, x_137); +x_139 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_139, 0, x_138); +lean_ctor_set(x_139, 1, x_135); +return x_139; +} +} +} +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; +x_140 = lean_ctor_get(x_105, 0); +x_141 = lean_ctor_get(x_105, 1); +x_142 = lean_ctor_get(x_105, 3); +x_143 = lean_ctor_get(x_105, 4); +x_144 = lean_ctor_get(x_105, 5); +lean_inc(x_144); +lean_inc(x_143); +lean_inc(x_142); +lean_inc(x_141); +lean_inc(x_140); +lean_dec(x_105); +x_145 = lean_ctor_get(x_109, 3); +lean_inc(x_145); +x_146 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_146, 0, x_140); +lean_ctor_set(x_146, 1, x_141); +lean_ctor_set(x_146, 2, x_145); +lean_ctor_set(x_146, 3, x_142); +lean_ctor_set(x_146, 4, x_143); +lean_ctor_set(x_146, 5, x_144); +x_147 = lean_ctor_get(x_109, 4); +lean_inc(x_147); +lean_dec(x_109); +x_148 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_148, 0, x_147); +x_149 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_150 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_146, x_149, x_148, x_3); +lean_dec(x_146); +if (lean_obj_tag(x_150) == 0) +{ +lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_151 = lean_ctor_get(x_150, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_dec(x_150); +x_153 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_107, x_2, x_152); +if (lean_obj_tag(x_153) == 0) +{ +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; +x_154 = lean_ctor_get(x_153, 0); +lean_inc(x_154); +x_155 = lean_ctor_get(x_153, 1); +lean_inc(x_155); +if (lean_is_exclusive(x_153)) { + lean_ctor_release(x_153, 0); + lean_ctor_release(x_153, 1); + x_156 = x_153; +} else { + lean_dec_ref(x_153); + x_156 = lean_box(0); +} +lean_ctor_set(x_1, 1, x_154); +lean_ctor_set(x_1, 0, x_151); +if (lean_is_scalar(x_156)) { + x_157 = lean_alloc_ctor(0, 2, 0); +} else { + x_157 = x_156; +} +lean_ctor_set(x_157, 0, x_1); +lean_ctor_set(x_157, 1, x_155); +return x_157; +} +else +{ +lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; +lean_dec(x_151); +lean_free_object(x_1); +x_158 = lean_ctor_get(x_153, 0); +lean_inc(x_158); +x_159 = lean_ctor_get(x_153, 1); +lean_inc(x_159); +if (lean_is_exclusive(x_153)) { + lean_ctor_release(x_153, 0); + lean_ctor_release(x_153, 1); + x_160 = x_153; +} else { + lean_dec_ref(x_153); + x_160 = lean_box(0); +} +if (lean_is_scalar(x_160)) { + x_161 = lean_alloc_ctor(1, 2, 0); +} else { + x_161 = x_160; +} +lean_ctor_set(x_161, 0, x_158); +lean_ctor_set(x_161, 1, x_159); +return x_161; +} +} +else +{ +lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; uint8_t x_166; lean_object* x_167; lean_object* x_168; +lean_free_object(x_1); +lean_dec(x_107); +x_162 = lean_ctor_get(x_150, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_150, 1); +lean_inc(x_163); +if (lean_is_exclusive(x_150)) { + lean_ctor_release(x_150, 0); + lean_ctor_release(x_150, 1); + x_164 = x_150; +} else { + lean_dec_ref(x_150); + x_164 = lean_box(0); +} +x_165 = lean_io_error_to_string(x_162); +x_166 = 4; +x_167 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_167, 0, x_165); +lean_ctor_set_uint8(x_167, sizeof(void*)*1, x_166); +if (lean_is_scalar(x_164)) { + x_168 = lean_alloc_ctor(1, 2, 0); +} else { + x_168 = x_164; +} +lean_ctor_set(x_168, 0, x_167); +lean_ctor_set(x_168, 1, x_163); +return x_168; +} +} +} +else +{ +lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_169 = lean_ctor_get(x_1, 1); +lean_inc(x_169); +lean_dec(x_1); +x_170 = lean_ctor_get(x_6, 1); +lean_inc(x_170); +lean_dec(x_6); +x_171 = lean_ctor_get(x_105, 0); +lean_inc(x_171); +x_172 = lean_ctor_get(x_105, 1); +lean_inc(x_172); +x_173 = lean_ctor_get(x_105, 3); +lean_inc(x_173); +x_174 = lean_ctor_get(x_105, 4); +lean_inc(x_174); +x_175 = lean_ctor_get(x_105, 5); +lean_inc(x_175); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + lean_ctor_release(x_105, 2); + lean_ctor_release(x_105, 3); + lean_ctor_release(x_105, 4); + lean_ctor_release(x_105, 5); + x_176 = x_105; +} else { + lean_dec_ref(x_105); + x_176 = lean_box(0); +} +x_177 = lean_ctor_get(x_170, 3); +lean_inc(x_177); +if (lean_is_scalar(x_176)) { + x_178 = lean_alloc_ctor(0, 6, 0); +} else { + x_178 = x_176; +} +lean_ctor_set(x_178, 0, x_171); +lean_ctor_set(x_178, 1, x_172); +lean_ctor_set(x_178, 2, x_177); +lean_ctor_set(x_178, 3, x_173); +lean_ctor_set(x_178, 4, x_174); +lean_ctor_set(x_178, 5, x_175); +x_179 = lean_ctor_get(x_170, 4); +lean_inc(x_179); +lean_dec(x_170); +x_180 = lean_alloc_closure((void*)(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__2), 6, 1); +lean_closure_set(x_180, 0, x_179); +x_181 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7; +x_182 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_178, x_181, x_180, x_3); +lean_dec(x_178); +if (lean_obj_tag(x_182) == 0) +{ +lean_object* x_183; lean_object* x_184; lean_object* x_185; +x_183 = lean_ctor_get(x_182, 0); +lean_inc(x_183); +x_184 = lean_ctor_get(x_182, 1); +lean_inc(x_184); +lean_dec(x_182); +x_185 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_169, x_2, x_184); +if (lean_obj_tag(x_185) == 0) +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_186 = lean_ctor_get(x_185, 0); +lean_inc(x_186); +x_187 = lean_ctor_get(x_185, 1); +lean_inc(x_187); +if (lean_is_exclusive(x_185)) { + lean_ctor_release(x_185, 0); + lean_ctor_release(x_185, 1); + x_188 = x_185; +} else { + lean_dec_ref(x_185); + x_188 = lean_box(0); +} +x_189 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_189, 0, x_183); +lean_ctor_set(x_189, 1, x_186); +if (lean_is_scalar(x_188)) { + x_190 = lean_alloc_ctor(0, 2, 0); +} else { + x_190 = x_188; +} +lean_ctor_set(x_190, 0, x_189); +lean_ctor_set(x_190, 1, x_187); +return x_190; +} +else +{ +lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +lean_dec(x_183); +x_191 = lean_ctor_get(x_185, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_185, 1); +lean_inc(x_192); +if (lean_is_exclusive(x_185)) { + lean_ctor_release(x_185, 0); + lean_ctor_release(x_185, 1); + x_193 = x_185; +} else { + lean_dec_ref(x_185); + x_193 = lean_box(0); +} +if (lean_is_scalar(x_193)) { + x_194 = lean_alloc_ctor(1, 2, 0); +} else { + x_194 = x_193; +} +lean_ctor_set(x_194, 0, x_191); +lean_ctor_set(x_194, 1, x_192); +return x_194; +} +} +else +{ +lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; lean_object* x_200; lean_object* x_201; +lean_dec(x_169); +x_195 = lean_ctor_get(x_182, 0); +lean_inc(x_195); +x_196 = lean_ctor_get(x_182, 1); +lean_inc(x_196); +if (lean_is_exclusive(x_182)) { + lean_ctor_release(x_182, 0); + lean_ctor_release(x_182, 1); + x_197 = x_182; +} else { + lean_dec_ref(x_182); + x_197 = lean_box(0); +} +x_198 = lean_io_error_to_string(x_195); +x_199 = 4; +x_200 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_200, 0, x_198); +lean_ctor_set_uint8(x_200, sizeof(void*)*1, x_199); +if (lean_is_scalar(x_197)) { + x_201 = lean_alloc_ctor(1, 2, 0); +} else { + x_201 = x_197; +} +lean_ctor_set(x_201, 0, x_200); +lean_ctor_set(x_201, 1, x_196); +return x_201; } } } @@ -5122,175 +5490,76 @@ x_7 = l_Lean_Server_Snapshots_Snapshot_infoTree(x_4); x_8 = l_Lean_Elab_InfoTree_goalsAt_x3f(x_1, x_7, x_2); if (lean_obj_tag(x_8) == 0) { -lean_object* x_9; lean_object* x_10; -x_9 = lean_alloc_ctor(1, 1, 0); +lean_object* x_9; +x_9 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_9, 0, x_3); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_6); +lean_ctor_set(x_9, 1, x_6); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_3); +x_10 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_8, x_5, x_6); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_ctor_get(x_10, 0); +x_13 = l_List_join___rarg(x_12); +x_14 = l_List_redLength___rarg(x_13); +x_15 = lean_mk_empty_array_with_capacity(x_14); +lean_dec(x_14); +x_16 = l_List_toArrayAux___rarg(x_13, x_15); +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_10, 0, x_17); return x_10; } else { -lean_object* x_11; -lean_dec(x_3); -x_11 = l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3(x_8, x_5, x_6); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -if (lean_obj_tag(x_12) == 0) -{ -uint8_t x_13; -x_13 = !lean_is_exclusive(x_11); -if (x_13 == 0) -{ -lean_object* x_14; uint8_t x_15; -x_14 = lean_ctor_get(x_11, 0); -lean_dec(x_14); -x_15 = !lean_is_exclusive(x_12); -if (x_15 == 0) -{ -return x_11; -} -else -{ -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_12, 0); -lean_inc(x_16); -lean_dec(x_12); -x_17 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_11, 0, x_17); -return x_11; -} -} -else -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -lean_dec(x_11); -x_19 = lean_ctor_get(x_12, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_18 = lean_ctor_get(x_10, 0); +x_19 = lean_ctor_get(x_10, 1); lean_inc(x_19); -if (lean_is_exclusive(x_12)) { - lean_ctor_release(x_12, 0); - x_20 = x_12; -} else { - lean_dec_ref(x_12); - x_20 = lean_box(0); -} -if (lean_is_scalar(x_20)) { - x_21 = lean_alloc_ctor(0, 1, 0); -} else { - x_21 = x_20; -} -lean_ctor_set(x_21, 0, x_19); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_18); -return x_22; +lean_inc(x_18); +lean_dec(x_10); +x_20 = l_List_join___rarg(x_18); +x_21 = l_List_redLength___rarg(x_20); +x_22 = lean_mk_empty_array_with_capacity(x_21); +lean_dec(x_21); +x_23 = l_List_toArrayAux___rarg(x_20, x_22); +x_24 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_24, 0, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_19); +return x_25; } } else { -uint8_t x_23; -x_23 = !lean_is_exclusive(x_11); -if (x_23 == 0) +uint8_t x_26; +x_26 = !lean_is_exclusive(x_10); +if (x_26 == 0) { -lean_object* x_24; uint8_t x_25; -x_24 = lean_ctor_get(x_11, 0); -lean_dec(x_24); -x_25 = !lean_is_exclusive(x_12); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_26 = lean_ctor_get(x_12, 0); -x_27 = l_List_join___rarg(x_26); -x_28 = l_List_redLength___rarg(x_27); -x_29 = lean_mk_empty_array_with_capacity(x_28); -lean_dec(x_28); -x_30 = l_List_toArrayAux___rarg(x_27, x_29); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_12, 0, x_31); -return x_11; +return x_10; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_32 = lean_ctor_get(x_12, 0); -lean_inc(x_32); -lean_dec(x_12); -x_33 = l_List_join___rarg(x_32); -x_34 = l_List_redLength___rarg(x_33); -x_35 = lean_mk_empty_array_with_capacity(x_34); -lean_dec(x_34); -x_36 = l_List_toArrayAux___rarg(x_33, x_35); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_36); -x_38 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_11, 0, x_38); -return x_11; -} -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_39 = lean_ctor_get(x_11, 1); -lean_inc(x_39); -lean_dec(x_11); -x_40 = lean_ctor_get(x_12, 0); -lean_inc(x_40); -if (lean_is_exclusive(x_12)) { - lean_ctor_release(x_12, 0); - x_41 = x_12; -} else { - lean_dec_ref(x_12); - x_41 = lean_box(0); -} -x_42 = l_List_join___rarg(x_40); -x_43 = l_List_redLength___rarg(x_42); -x_44 = lean_mk_empty_array_with_capacity(x_43); -lean_dec(x_43); -x_45 = l_List_toArrayAux___rarg(x_42, x_44); -x_46 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_46, 0, x_45); -if (lean_is_scalar(x_41)) { - x_47 = lean_alloc_ctor(1, 1, 0); -} else { - x_47 = x_41; -} -lean_ctor_set(x_47, 0, x_46); -x_48 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_48, 0, x_47); -lean_ctor_set(x_48, 1, x_39); -return x_48; -} -} -} -else -{ -uint8_t x_49; -x_49 = !lean_is_exclusive(x_11); -if (x_49 == 0) -{ -return x_11; -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_11, 0); -x_51 = lean_ctor_get(x_11, 1); -lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_11); -x_52 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_52, 0, x_50); -lean_ctor_set(x_52, 1, x_51); -return x_52; +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_10, 0); +x_28 = lean_ctor_get(x_10, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_10); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; } } } @@ -5299,7 +5568,7 @@ return x_52; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveGoals(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -5308,27 +5577,24 @@ lean_inc(x_6); lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 2); +lean_dec(x_7); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); -x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); -lean_inc(x_11); -x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__1___boxed), 2, 1); -lean_closure_set(x_12, 0, x_11); -x_13 = lean_box(0); -x_14 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveGoals___lambda__1___boxed), 6, 3); -lean_closure_set(x_14, 0, x_9); -lean_closure_set(x_14, 1, x_11); -lean_closure_set(x_14, 2, x_13); -x_15 = l_Lean_Server_FileWorker_handleHover___closed__1; -x_16 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_12, x_15, x_14, x_2, x_6); -return x_16; +x_10 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_9); +lean_inc(x_10); +x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion___lambda__1___boxed), 2, 1); +lean_closure_set(x_11, 0, x_10); +x_12 = lean_box(0); +x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveGoals___lambda__1___boxed), 6, 3); +lean_closure_set(x_13, 0, x_8); +lean_closure_set(x_13, 1, x_10); +lean_closure_set(x_13, 2, x_12); +x_14 = l_Lean_Server_FileWorker_handleHover___closed__1; +x_15 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_5, x_11, x_14, x_13, x_2, x_6); +return x_15; } } LEAN_EXPORT lean_object* l_Lean_Meta_withPPInaccessibleNames___at_Lean_Server_FileWorker_getInteractiveGoals___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { @@ -5542,64 +5808,29 @@ x_4 = l_Lean_Server_FileWorker_getInteractiveGoals(x_1, x_2, x_3); x_5 = !lean_is_exclusive(x_4); if (x_5 == 0) { -lean_object* x_6; uint8_t x_7; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_6 = lean_ctor_get(x_4, 0); -x_7 = !lean_is_exclusive(x_6); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_6, 0); -x_9 = l_Lean_Server_FileWorker_handlePlainGoal___closed__3; -x_10 = l_Task_Priority_default; -x_11 = lean_task_map(x_9, x_8, x_10); -lean_ctor_set(x_6, 0, x_11); +x_7 = l_Lean_Server_FileWorker_handlePlainGoal___closed__3; +x_8 = l_Task_Priority_default; +x_9 = lean_task_map(x_7, x_6, x_8); +lean_ctor_set(x_4, 0, x_9); return x_4; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -x_13 = l_Lean_Server_FileWorker_handlePlainGoal___closed__3; -x_14 = l_Task_Priority_default; -x_15 = lean_task_map(x_13, x_12, x_14); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_4, 0, x_16); -return x_4; -} -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_17 = lean_ctor_get(x_4, 0); -x_18 = lean_ctor_get(x_4, 1); -lean_inc(x_18); -lean_inc(x_17); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_10 = lean_ctor_get(x_4, 0); +x_11 = lean_ctor_get(x_4, 1); +lean_inc(x_11); +lean_inc(x_10); lean_dec(x_4); -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -if (lean_is_exclusive(x_17)) { - lean_ctor_release(x_17, 0); - x_20 = x_17; -} else { - lean_dec_ref(x_17); - x_20 = lean_box(0); -} -x_21 = l_Lean_Server_FileWorker_handlePlainGoal___closed__3; -x_22 = l_Task_Priority_default; -x_23 = lean_task_map(x_21, x_19, x_22); -if (lean_is_scalar(x_20)) { - x_24 = lean_alloc_ctor(1, 1, 0); -} else { - x_24 = x_20; -} -lean_ctor_set(x_24, 0, x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_18); -return x_25; +x_12 = l_Lean_Server_FileWorker_handlePlainGoal___closed__3; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_10, x_13); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_11); +return x_15; } } } @@ -5725,794 +5956,814 @@ x_8 = l_Lean_Server_Snapshots_Snapshot_infoTree(x_5); x_9 = l_Lean_Elab_InfoTree_termGoalAt_x3f(x_8, x_1); if (lean_obj_tag(x_9) == 0) { -lean_object* x_10; lean_object* x_11; +lean_object* x_10; lean_dec(x_3); -x_10 = lean_alloc_ctor(1, 1, 0); +x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_2); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; +lean_ctor_set(x_10, 1, x_7); +return x_10; } else { -uint8_t x_12; -x_12 = !lean_is_exclusive(x_9); -if (x_12 == 0) +uint8_t x_11; +x_11 = !lean_is_exclusive(x_9); +if (x_11 == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_9, 0); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -if (lean_obj_tag(x_14) == 1) +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_9, 0); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 1) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_dec(x_2); +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +lean_dec(x_12); x_15 = lean_ctor_get(x_13, 0); lean_inc(x_15); -lean_dec(x_13); -x_16 = lean_ctor_get(x_14, 0); -lean_inc(x_16); -x_17 = l_Lean_Elab_Info_lctx(x_14); -x_18 = lean_ctor_get(x_16, 3); -lean_inc(x_18); -lean_inc(x_16); -x_19 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__1), 7, 2); -lean_closure_set(x_19, 0, x_18); -lean_closure_set(x_19, 1, x_16); +x_16 = l_Lean_Elab_Info_lctx(x_13); +x_17 = lean_ctor_get(x_15, 3); lean_inc(x_17); -x_20 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_15, x_17, x_19, x_7); -if (lean_obj_tag(x_20) == 0) +lean_inc(x_15); +x_18 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__1), 7, 2); +lean_closure_set(x_18, 0, x_17); +lean_closure_set(x_18, 1, x_15); +lean_inc(x_16); +x_19 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_14, x_16, x_18, x_7); +if (lean_obj_tag(x_19) == 0) { -lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; -x_21 = lean_ctor_get(x_20, 0); +lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_dec(x_20); -x_23 = lean_ctor_get_uint8(x_16, sizeof(void*)*4); -lean_dec(x_16); -lean_ctor_set(x_9, 0, x_21); -x_24 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__2), 6, 1); -lean_closure_set(x_24, 0, x_9); -if (x_23 == 0) -{ -lean_object* x_25; -x_25 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_15, x_17, x_24, x_22); +lean_dec(x_19); +x_22 = lean_ctor_get_uint8(x_15, sizeof(void*)*4); lean_dec(x_15); -if (lean_obj_tag(x_25) == 0) +lean_ctor_set(x_9, 0, x_20); +x_23 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__2), 6, 1); +lean_closure_set(x_23, 0, x_9); +if (x_22 == 0) { -uint8_t x_26; -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_25, 0); -x_28 = l_Lean_Elab_Info_range_x3f(x_14); +lean_object* x_24; +x_24 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_14, x_16, x_23, x_21); lean_dec(x_14); -if (lean_obj_tag(x_28) == 0) +if (lean_obj_tag(x_24) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_29 = lean_ctor_get(x_27, 0); +uint8_t x_25; +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +x_27 = l_Lean_Elab_Info_range_x3f(x_13); +lean_dec(x_13); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_26, 1); lean_inc(x_29); -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -lean_dec(x_27); +lean_dec(x_26); lean_inc(x_3); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_3); -lean_ctor_set(x_31, 1, x_3); -x_32 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_32, 0, x_29); -lean_ctor_set(x_32, 1, x_30); -lean_ctor_set(x_32, 2, x_31); -x_33 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_33, 0, x_32); -x_34 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_25, 0, x_34); -return x_25; +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_3); +lean_ctor_set(x_30, 1, x_3); +x_31 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_29); +lean_ctor_set(x_31, 2, x_30); +x_32 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_24, 0, x_32); +return x_24; } else { -lean_object* x_35; lean_object* x_36; uint8_t x_37; +lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_dec(x_3); -x_35 = lean_ctor_get(x_27, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_27, 1); -lean_inc(x_36); +x_33 = lean_ctor_get(x_26, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_26, 1); +lean_inc(x_34); +lean_dec(x_26); +x_35 = !lean_is_exclusive(x_27); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_27, 0); +x_37 = l_String_Range_toLspRange(x_4, x_36); +lean_dec(x_36); +x_38 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_38, 0, x_33); +lean_ctor_set(x_38, 1, x_34); +lean_ctor_set(x_38, 2, x_37); +lean_ctor_set(x_27, 0, x_38); +lean_ctor_set(x_24, 0, x_27); +return x_24; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_39 = lean_ctor_get(x_27, 0); +lean_inc(x_39); lean_dec(x_27); -x_37 = !lean_is_exclusive(x_28); -if (x_37 == 0) -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = lean_ctor_get(x_28, 0); -x_39 = l_String_Range_toLspRange(x_4, x_38); -lean_dec(x_38); -x_40 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_40, 0, x_35); -lean_ctor_set(x_40, 1, x_36); -lean_ctor_set(x_40, 2, x_39); -lean_ctor_set(x_28, 0, x_40); -x_41 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_41, 0, x_28); -lean_ctor_set(x_25, 0, x_41); -return x_25; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_42 = lean_ctor_get(x_28, 0); -lean_inc(x_42); -lean_dec(x_28); -x_43 = l_String_Range_toLspRange(x_4, x_42); -lean_dec(x_42); -x_44 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_44, 0, x_35); -lean_ctor_set(x_44, 1, x_36); -lean_ctor_set(x_44, 2, x_43); -x_45 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_45, 0, x_44); -x_46 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_46, 0, x_45); -lean_ctor_set(x_25, 0, x_46); -return x_25; +x_40 = l_String_Range_toLspRange(x_4, x_39); +lean_dec(x_39); +x_41 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_41, 0, x_33); +lean_ctor_set(x_41, 1, x_34); +lean_ctor_set(x_41, 2, x_40); +x_42 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_24, 0, x_42); +return x_24; } } } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_25, 0); -x_48 = lean_ctor_get(x_25, 1); -lean_inc(x_48); +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_24, 0); +x_44 = lean_ctor_get(x_24, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_24); +x_45 = l_Lean_Elab_Info_range_x3f(x_13); +lean_dec(x_13); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_46 = lean_ctor_get(x_43, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_43, 1); lean_inc(x_47); -lean_dec(x_25); -x_49 = l_Lean_Elab_Info_range_x3f(x_14); -lean_dec(x_14); -if (lean_obj_tag(x_49) == 0) -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_50 = lean_ctor_get(x_47, 0); -lean_inc(x_50); -x_51 = lean_ctor_get(x_47, 1); -lean_inc(x_51); -lean_dec(x_47); +lean_dec(x_43); lean_inc(x_3); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_3); -lean_ctor_set(x_52, 1, x_3); -x_53 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_51); -lean_ctor_set(x_53, 2, x_52); -x_54 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_54, 0, x_53); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_54); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_48); -return x_56; +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_3); +lean_ctor_set(x_48, 1, x_3); +x_49 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_49, 0, x_46); +lean_ctor_set(x_49, 1, x_47); +lean_ctor_set(x_49, 2, x_48); +x_50 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_50, 0, x_49); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_44); +return x_51; } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_dec(x_3); -x_57 = lean_ctor_get(x_47, 0); -lean_inc(x_57); -x_58 = lean_ctor_get(x_47, 1); -lean_inc(x_58); -lean_dec(x_47); -x_59 = lean_ctor_get(x_49, 0); -lean_inc(x_59); -if (lean_is_exclusive(x_49)) { - lean_ctor_release(x_49, 0); - x_60 = x_49; +x_52 = lean_ctor_get(x_43, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_43, 1); +lean_inc(x_53); +lean_dec(x_43); +x_54 = lean_ctor_get(x_45, 0); +lean_inc(x_54); +if (lean_is_exclusive(x_45)) { + lean_ctor_release(x_45, 0); + x_55 = x_45; } else { - lean_dec_ref(x_49); - x_60 = lean_box(0); + lean_dec_ref(x_45); + x_55 = lean_box(0); } -x_61 = l_String_Range_toLspRange(x_4, x_59); -lean_dec(x_59); -x_62 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_62, 0, x_57); -lean_ctor_set(x_62, 1, x_58); -lean_ctor_set(x_62, 2, x_61); -if (lean_is_scalar(x_60)) { - x_63 = lean_alloc_ctor(1, 1, 0); +x_56 = l_String_Range_toLspRange(x_4, x_54); +lean_dec(x_54); +x_57 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_57, 0, x_52); +lean_ctor_set(x_57, 1, x_53); +lean_ctor_set(x_57, 2, x_56); +if (lean_is_scalar(x_55)) { + x_58 = lean_alloc_ctor(1, 1, 0); } else { - x_63 = x_60; + x_58 = x_55; } -lean_ctor_set(x_63, 0, x_62); -x_64 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_64, 0, x_63); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_48); -return x_65; +lean_ctor_set(x_58, 0, x_57); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_58); +lean_ctor_set(x_59, 1, x_44); +return x_59; } } } else { -uint8_t x_66; -lean_dec(x_14); +uint8_t x_60; +lean_dec(x_13); lean_dec(x_3); -x_66 = !lean_is_exclusive(x_25); -if (x_66 == 0) +x_60 = !lean_is_exclusive(x_24); +if (x_60 == 0) { -return x_25; +lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; +x_61 = lean_ctor_get(x_24, 0); +x_62 = lean_io_error_to_string(x_61); +x_63 = 4; +x_64 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set_uint8(x_64, sizeof(void*)*1, x_63); +lean_ctor_set(x_24, 0, x_64); +return x_24; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_25, 0); -x_68 = lean_ctor_get(x_25, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_25); -x_69 = lean_alloc_ctor(1, 2, 0); +lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; lean_object* x_69; lean_object* x_70; +x_65 = lean_ctor_get(x_24, 0); +x_66 = lean_ctor_get(x_24, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_24); +x_67 = lean_io_error_to_string(x_65); +x_68 = 4; +x_69 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; +lean_ctor_set_uint8(x_69, sizeof(void*)*1, x_68); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_69); +lean_ctor_set(x_70, 1, x_66); +return x_70; } } } else { -lean_object* x_70; lean_object* x_71; -x_70 = lean_local_ctx_pop(x_17); -x_71 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_15, x_70, x_24, x_22); -lean_dec(x_15); -if (lean_obj_tag(x_71) == 0) -{ -uint8_t x_72; -x_72 = !lean_is_exclusive(x_71); -if (x_72 == 0) -{ -lean_object* x_73; lean_object* x_74; -x_73 = lean_ctor_get(x_71, 0); -x_74 = l_Lean_Elab_Info_range_x3f(x_14); +lean_object* x_71; lean_object* x_72; +x_71 = lean_local_ctx_pop(x_16); +x_72 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_14, x_71, x_23, x_21); lean_dec(x_14); -if (lean_obj_tag(x_74) == 0) +if (lean_obj_tag(x_72) == 0) { -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_75 = lean_ctor_get(x_73, 0); -lean_inc(x_75); -x_76 = lean_ctor_get(x_73, 1); +uint8_t x_73; +x_73 = !lean_is_exclusive(x_72); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = lean_ctor_get(x_72, 0); +x_75 = l_Lean_Elab_Info_range_x3f(x_13); +lean_dec(x_13); +if (lean_obj_tag(x_75) == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_74, 0); lean_inc(x_76); -lean_dec(x_73); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); +lean_dec(x_74); lean_inc(x_3); -x_77 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_77, 0, x_3); -lean_ctor_set(x_77, 1, x_3); -x_78 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_78, 0, x_75); -lean_ctor_set(x_78, 1, x_76); -lean_ctor_set(x_78, 2, x_77); -x_79 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_79, 0, x_78); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_3); +lean_ctor_set(x_78, 1, x_3); +x_79 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_79, 0, x_76); +lean_ctor_set(x_79, 1, x_77); +lean_ctor_set(x_79, 2, x_78); x_80 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_80, 0, x_79); -lean_ctor_set(x_71, 0, x_80); -return x_71; +lean_ctor_set(x_72, 0, x_80); +return x_72; } else { lean_object* x_81; lean_object* x_82; uint8_t x_83; lean_dec(x_3); -x_81 = lean_ctor_get(x_73, 0); +x_81 = lean_ctor_get(x_74, 0); lean_inc(x_81); -x_82 = lean_ctor_get(x_73, 1); +x_82 = lean_ctor_get(x_74, 1); lean_inc(x_82); -lean_dec(x_73); -x_83 = !lean_is_exclusive(x_74); +lean_dec(x_74); +x_83 = !lean_is_exclusive(x_75); if (x_83 == 0) { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_84 = lean_ctor_get(x_74, 0); +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_75, 0); x_85 = l_String_Range_toLspRange(x_4, x_84); lean_dec(x_84); x_86 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_86, 0, x_81); lean_ctor_set(x_86, 1, x_82); lean_ctor_set(x_86, 2, x_85); -lean_ctor_set(x_74, 0, x_86); -x_87 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_87, 0, x_74); -lean_ctor_set(x_71, 0, x_87); -return x_71; +lean_ctor_set(x_75, 0, x_86); +lean_ctor_set(x_72, 0, x_75); +return x_72; } else { -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_88 = lean_ctor_get(x_74, 0); -lean_inc(x_88); -lean_dec(x_74); -x_89 = l_String_Range_toLspRange(x_4, x_88); -lean_dec(x_88); -x_90 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_90, 0, x_81); -lean_ctor_set(x_90, 1, x_82); -lean_ctor_set(x_90, 2, x_89); -x_91 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_91, 0, x_90); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_91); -lean_ctor_set(x_71, 0, x_92); -return x_71; +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_87 = lean_ctor_get(x_75, 0); +lean_inc(x_87); +lean_dec(x_75); +x_88 = l_String_Range_toLspRange(x_4, x_87); +lean_dec(x_87); +x_89 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_89, 0, x_81); +lean_ctor_set(x_89, 1, x_82); +lean_ctor_set(x_89, 2, x_88); +x_90 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_72, 0, x_90); +return x_72; } } } else { -lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_93 = lean_ctor_get(x_71, 0); -x_94 = lean_ctor_get(x_71, 1); +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_72, 0); +x_92 = lean_ctor_get(x_72, 1); +lean_inc(x_92); +lean_inc(x_91); +lean_dec(x_72); +x_93 = l_Lean_Elab_Info_range_x3f(x_13); +lean_dec(x_13); +if (lean_obj_tag(x_93) == 0) +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_94 = lean_ctor_get(x_91, 0); lean_inc(x_94); -lean_inc(x_93); -lean_dec(x_71); -x_95 = l_Lean_Elab_Info_range_x3f(x_14); -lean_dec(x_14); -if (lean_obj_tag(x_95) == 0) -{ -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_96 = lean_ctor_get(x_93, 0); -lean_inc(x_96); -x_97 = lean_ctor_get(x_93, 1); -lean_inc(x_97); -lean_dec(x_93); +x_95 = lean_ctor_get(x_91, 1); +lean_inc(x_95); +lean_dec(x_91); lean_inc(x_3); -x_98 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_98, 0, x_3); -lean_ctor_set(x_98, 1, x_3); -x_99 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_99, 0, x_96); -lean_ctor_set(x_99, 1, x_97); -lean_ctor_set(x_99, 2, x_98); -x_100 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_100, 0, x_99); -x_101 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_101, 0, x_100); -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_94); -return x_102; +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_3); +lean_ctor_set(x_96, 1, x_3); +x_97 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_97, 0, x_94); +lean_ctor_set(x_97, 1, x_95); +lean_ctor_set(x_97, 2, x_96); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); +x_99 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_99, 0, x_98); +lean_ctor_set(x_99, 1, x_92); +return x_99; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_dec(x_3); -x_103 = lean_ctor_get(x_93, 0); -lean_inc(x_103); -x_104 = lean_ctor_get(x_93, 1); -lean_inc(x_104); -lean_dec(x_93); -x_105 = lean_ctor_get(x_95, 0); -lean_inc(x_105); -if (lean_is_exclusive(x_95)) { - lean_ctor_release(x_95, 0); - x_106 = x_95; +x_100 = lean_ctor_get(x_91, 0); +lean_inc(x_100); +x_101 = lean_ctor_get(x_91, 1); +lean_inc(x_101); +lean_dec(x_91); +x_102 = lean_ctor_get(x_93, 0); +lean_inc(x_102); +if (lean_is_exclusive(x_93)) { + lean_ctor_release(x_93, 0); + x_103 = x_93; } else { - lean_dec_ref(x_95); - x_106 = lean_box(0); + lean_dec_ref(x_93); + x_103 = lean_box(0); } -x_107 = l_String_Range_toLspRange(x_4, x_105); -lean_dec(x_105); -x_108 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_108, 0, x_103); -lean_ctor_set(x_108, 1, x_104); -lean_ctor_set(x_108, 2, x_107); -if (lean_is_scalar(x_106)) { - x_109 = lean_alloc_ctor(1, 1, 0); +x_104 = l_String_Range_toLspRange(x_4, x_102); +lean_dec(x_102); +x_105 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_105, 0, x_100); +lean_ctor_set(x_105, 1, x_101); +lean_ctor_set(x_105, 2, x_104); +if (lean_is_scalar(x_103)) { + x_106 = lean_alloc_ctor(1, 1, 0); } else { - x_109 = x_106; + x_106 = x_103; } -lean_ctor_set(x_109, 0, x_108); -x_110 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_110, 0, x_109); -x_111 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_111, 0, x_110); -lean_ctor_set(x_111, 1, x_94); -return x_111; +lean_ctor_set(x_106, 0, x_105); +x_107 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_107, 0, x_106); +lean_ctor_set(x_107, 1, x_92); +return x_107; } } } else { -uint8_t x_112; -lean_dec(x_14); +uint8_t x_108; +lean_dec(x_13); lean_dec(x_3); -x_112 = !lean_is_exclusive(x_71); -if (x_112 == 0) +x_108 = !lean_is_exclusive(x_72); +if (x_108 == 0) { -return x_71; +lean_object* x_109; lean_object* x_110; uint8_t x_111; lean_object* x_112; +x_109 = lean_ctor_get(x_72, 0); +x_110 = lean_io_error_to_string(x_109); +x_111 = 4; +x_112 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_112, 0, x_110); +lean_ctor_set_uint8(x_112, sizeof(void*)*1, x_111); +lean_ctor_set(x_72, 0, x_112); +return x_72; } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_ctor_get(x_71, 0); -x_114 = lean_ctor_get(x_71, 1); +lean_object* x_113; lean_object* x_114; lean_object* x_115; uint8_t x_116; lean_object* x_117; lean_object* x_118; +x_113 = lean_ctor_get(x_72, 0); +x_114 = lean_ctor_get(x_72, 1); lean_inc(x_114); lean_inc(x_113); -lean_dec(x_71); -x_115 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_114); -return x_115; +lean_dec(x_72); +x_115 = lean_io_error_to_string(x_113); +x_116 = 4; +x_117 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_117, 0, x_115); +lean_ctor_set_uint8(x_117, sizeof(void*)*1, x_116); +x_118 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_118, 0, x_117); +lean_ctor_set(x_118, 1, x_114); +return x_118; } } } } else { -uint8_t x_116; -lean_dec(x_17); +uint8_t x_119; lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); -lean_free_object(x_9); -lean_dec(x_3); -x_116 = !lean_is_exclusive(x_20); -if (x_116 == 0) -{ -return x_20; -} -else -{ -lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_117 = lean_ctor_get(x_20, 0); -x_118 = lean_ctor_get(x_20, 1); -lean_inc(x_118); -lean_inc(x_117); -lean_dec(x_20); -x_119 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_119, 0, x_117); -lean_ctor_set(x_119, 1, x_118); -return x_119; -} -} -} -else -{ -lean_object* x_120; lean_object* x_121; -lean_dec(x_14); -lean_free_object(x_9); lean_dec(x_13); +lean_free_object(x_9); lean_dec(x_3); -x_120 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_120, 0, x_2); -x_121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_121, 0, x_120); -lean_ctor_set(x_121, 1, x_7); -return x_121; -} +x_119 = !lean_is_exclusive(x_19); +if (x_119 == 0) +{ +lean_object* x_120; lean_object* x_121; uint8_t x_122; lean_object* x_123; +x_120 = lean_ctor_get(x_19, 0); +x_121 = lean_io_error_to_string(x_120); +x_122 = 4; +x_123 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_123, 0, x_121); +lean_ctor_set_uint8(x_123, sizeof(void*)*1, x_122); +lean_ctor_set(x_19, 0, x_123); +return x_19; } else { -lean_object* x_122; lean_object* x_123; -x_122 = lean_ctor_get(x_9, 0); -lean_inc(x_122); -lean_dec(x_9); -x_123 = lean_ctor_get(x_122, 1); -lean_inc(x_123); -if (lean_obj_tag(x_123) == 1) -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_2); -x_124 = lean_ctor_get(x_122, 0); +lean_object* x_124; lean_object* x_125; lean_object* x_126; uint8_t x_127; lean_object* x_128; lean_object* x_129; +x_124 = lean_ctor_get(x_19, 0); +x_125 = lean_ctor_get(x_19, 1); +lean_inc(x_125); lean_inc(x_124); -lean_dec(x_122); -x_125 = lean_ctor_get(x_123, 0); -lean_inc(x_125); -x_126 = l_Lean_Elab_Info_lctx(x_123); -x_127 = lean_ctor_get(x_125, 3); -lean_inc(x_127); -lean_inc(x_125); -x_128 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__1), 7, 2); -lean_closure_set(x_128, 0, x_127); -lean_closure_set(x_128, 1, x_125); -lean_inc(x_126); -x_129 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_124, x_126, x_128, x_7); -if (lean_obj_tag(x_129) == 0) +lean_dec(x_19); +x_126 = lean_io_error_to_string(x_124); +x_127 = 4; +x_128 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_128, 0, x_126); +lean_ctor_set_uint8(x_128, sizeof(void*)*1, x_127); +x_129 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_129, 0, x_128); +lean_ctor_set(x_129, 1, x_125); +return x_129; +} +} +} +else { -lean_object* x_130; lean_object* x_131; uint8_t x_132; lean_object* x_133; lean_object* x_134; -x_130 = lean_ctor_get(x_129, 0); -lean_inc(x_130); -x_131 = lean_ctor_get(x_129, 1); +lean_object* x_130; +lean_dec(x_13); +lean_free_object(x_9); +lean_dec(x_12); +lean_dec(x_3); +x_130 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_130, 0, x_2); +lean_ctor_set(x_130, 1, x_7); +return x_130; +} +} +else +{ +lean_object* x_131; lean_object* x_132; +x_131 = lean_ctor_get(x_9, 0); lean_inc(x_131); -lean_dec(x_129); -x_132 = lean_ctor_get_uint8(x_125, sizeof(void*)*4); -lean_dec(x_125); -x_133 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_133, 0, x_130); -x_134 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__2), 6, 1); -lean_closure_set(x_134, 0, x_133); -if (x_132 == 0) +lean_dec(x_9); +x_132 = lean_ctor_get(x_131, 1); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 1) { -lean_object* x_135; -x_135 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_124, x_126, x_134, x_131); -lean_dec(x_124); -if (lean_obj_tag(x_135) == 0) -{ -lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; -x_136 = lean_ctor_get(x_135, 0); +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_2); +x_133 = lean_ctor_get(x_131, 0); +lean_inc(x_133); +lean_dec(x_131); +x_134 = lean_ctor_get(x_132, 0); +lean_inc(x_134); +x_135 = l_Lean_Elab_Info_lctx(x_132); +x_136 = lean_ctor_get(x_134, 3); lean_inc(x_136); -x_137 = lean_ctor_get(x_135, 1); -lean_inc(x_137); -if (lean_is_exclusive(x_135)) { - lean_ctor_release(x_135, 0); - lean_ctor_release(x_135, 1); - x_138 = x_135; -} else { - lean_dec_ref(x_135); - x_138 = lean_box(0); -} -x_139 = l_Lean_Elab_Info_range_x3f(x_123); -lean_dec(x_123); -if (lean_obj_tag(x_139) == 0) +lean_inc(x_134); +x_137 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__1), 7, 2); +lean_closure_set(x_137, 0, x_136); +lean_closure_set(x_137, 1, x_134); +lean_inc(x_135); +x_138 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_133, x_135, x_137, x_7); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; -x_140 = lean_ctor_get(x_136, 0); +lean_object* x_139; lean_object* x_140; uint8_t x_141; lean_object* x_142; lean_object* x_143; +x_139 = lean_ctor_get(x_138, 0); +lean_inc(x_139); +x_140 = lean_ctor_get(x_138, 1); lean_inc(x_140); -x_141 = lean_ctor_get(x_136, 1); -lean_inc(x_141); -lean_dec(x_136); -lean_inc(x_3); -x_142 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_142, 0, x_3); -lean_ctor_set(x_142, 1, x_3); -x_143 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_143, 0, x_140); -lean_ctor_set(x_143, 1, x_141); -lean_ctor_set(x_143, 2, x_142); -x_144 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_144, 0, x_143); -x_145 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_145, 0, x_144); -if (lean_is_scalar(x_138)) { - x_146 = lean_alloc_ctor(0, 2, 0); -} else { - x_146 = x_138; -} -lean_ctor_set(x_146, 0, x_145); -lean_ctor_set(x_146, 1, x_137); -return x_146; -} -else +lean_dec(x_138); +x_141 = lean_ctor_get_uint8(x_134, sizeof(void*)*4); +lean_dec(x_134); +x_142 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_142, 0, x_139); +x_143 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__2), 6, 1); +lean_closure_set(x_143, 0, x_142); +if (x_141 == 0) { -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; -lean_dec(x_3); -x_147 = lean_ctor_get(x_136, 0); -lean_inc(x_147); -x_148 = lean_ctor_get(x_136, 1); -lean_inc(x_148); -lean_dec(x_136); -x_149 = lean_ctor_get(x_139, 0); +lean_object* x_144; +x_144 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_133, x_135, x_143, x_140); +lean_dec(x_133); +if (lean_obj_tag(x_144) == 0) +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +x_145 = lean_ctor_get(x_144, 0); +lean_inc(x_145); +x_146 = lean_ctor_get(x_144, 1); +lean_inc(x_146); +if (lean_is_exclusive(x_144)) { + lean_ctor_release(x_144, 0); + lean_ctor_release(x_144, 1); + x_147 = x_144; +} else { + lean_dec_ref(x_144); + x_147 = lean_box(0); +} +x_148 = l_Lean_Elab_Info_range_x3f(x_132); +lean_dec(x_132); +if (lean_obj_tag(x_148) == 0) +{ +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_149 = lean_ctor_get(x_145, 0); lean_inc(x_149); -if (lean_is_exclusive(x_139)) { - lean_ctor_release(x_139, 0); - x_150 = x_139; -} else { - lean_dec_ref(x_139); - x_150 = lean_box(0); -} -x_151 = l_String_Range_toLspRange(x_4, x_149); -lean_dec(x_149); +x_150 = lean_ctor_get(x_145, 1); +lean_inc(x_150); +lean_dec(x_145); +lean_inc(x_3); +x_151 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_151, 0, x_3); +lean_ctor_set(x_151, 1, x_3); x_152 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_152, 0, x_147); -lean_ctor_set(x_152, 1, x_148); +lean_ctor_set(x_152, 0, x_149); +lean_ctor_set(x_152, 1, x_150); lean_ctor_set(x_152, 2, x_151); -if (lean_is_scalar(x_150)) { - x_153 = lean_alloc_ctor(1, 1, 0); -} else { - x_153 = x_150; -} +x_153 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_153, 0, x_152); -x_154 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_154, 0, x_153); -if (lean_is_scalar(x_138)) { - x_155 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_147)) { + x_154 = lean_alloc_ctor(0, 2, 0); } else { - x_155 = x_138; -} -lean_ctor_set(x_155, 0, x_154); -lean_ctor_set(x_155, 1, x_137); -return x_155; + x_154 = x_147; } +lean_ctor_set(x_154, 0, x_153); +lean_ctor_set(x_154, 1, x_146); +return x_154; } else { -lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; -lean_dec(x_123); +lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_dec(x_3); -x_156 = lean_ctor_get(x_135, 0); +x_155 = lean_ctor_get(x_145, 0); +lean_inc(x_155); +x_156 = lean_ctor_get(x_145, 1); lean_inc(x_156); -x_157 = lean_ctor_get(x_135, 1); +lean_dec(x_145); +x_157 = lean_ctor_get(x_148, 0); lean_inc(x_157); -if (lean_is_exclusive(x_135)) { - lean_ctor_release(x_135, 0); - lean_ctor_release(x_135, 1); - x_158 = x_135; +if (lean_is_exclusive(x_148)) { + lean_ctor_release(x_148, 0); + x_158 = x_148; } else { - lean_dec_ref(x_135); + lean_dec_ref(x_148); x_158 = lean_box(0); } +x_159 = l_String_Range_toLspRange(x_4, x_157); +lean_dec(x_157); +x_160 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_160, 0, x_155); +lean_ctor_set(x_160, 1, x_156); +lean_ctor_set(x_160, 2, x_159); if (lean_is_scalar(x_158)) { - x_159 = lean_alloc_ctor(1, 2, 0); + x_161 = lean_alloc_ctor(1, 1, 0); } else { - x_159 = x_158; + x_161 = x_158; } -lean_ctor_set(x_159, 0, x_156); -lean_ctor_set(x_159, 1, x_157); -return x_159; +lean_ctor_set(x_161, 0, x_160); +if (lean_is_scalar(x_147)) { + x_162 = lean_alloc_ctor(0, 2, 0); +} else { + x_162 = x_147; +} +lean_ctor_set(x_162, 0, x_161); +lean_ctor_set(x_162, 1, x_146); +return x_162; } } else { -lean_object* x_160; lean_object* x_161; -x_160 = lean_local_ctx_pop(x_126); -x_161 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_124, x_160, x_134, x_131); -lean_dec(x_124); -if (lean_obj_tag(x_161) == 0) -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; -x_162 = lean_ctor_get(x_161, 0); -lean_inc(x_162); -x_163 = lean_ctor_get(x_161, 1); -lean_inc(x_163); -if (lean_is_exclusive(x_161)) { - lean_ctor_release(x_161, 0); - lean_ctor_release(x_161, 1); - x_164 = x_161; -} else { - lean_dec_ref(x_161); - x_164 = lean_box(0); -} -x_165 = l_Lean_Elab_Info_range_x3f(x_123); -lean_dec(x_123); -if (lean_obj_tag(x_165) == 0) -{ -lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; -x_166 = lean_ctor_get(x_162, 0); -lean_inc(x_166); -x_167 = lean_ctor_get(x_162, 1); -lean_inc(x_167); -lean_dec(x_162); -lean_inc(x_3); -x_168 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_168, 0, x_3); -lean_ctor_set(x_168, 1, x_3); -x_169 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_169, 0, x_166); -lean_ctor_set(x_169, 1, x_167); -lean_ctor_set(x_169, 2, x_168); -x_170 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_170, 0, x_169); -x_171 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_171, 0, x_170); -if (lean_is_scalar(x_164)) { - x_172 = lean_alloc_ctor(0, 2, 0); -} else { - x_172 = x_164; -} -lean_ctor_set(x_172, 0, x_171); -lean_ctor_set(x_172, 1, x_163); -return x_172; -} -else -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; +lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; uint8_t x_167; lean_object* x_168; lean_object* x_169; +lean_dec(x_132); lean_dec(x_3); -x_173 = lean_ctor_get(x_162, 0); +x_163 = lean_ctor_get(x_144, 0); +lean_inc(x_163); +x_164 = lean_ctor_get(x_144, 1); +lean_inc(x_164); +if (lean_is_exclusive(x_144)) { + lean_ctor_release(x_144, 0); + lean_ctor_release(x_144, 1); + x_165 = x_144; +} else { + lean_dec_ref(x_144); + x_165 = lean_box(0); +} +x_166 = lean_io_error_to_string(x_163); +x_167 = 4; +x_168 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_168, 0, x_166); +lean_ctor_set_uint8(x_168, sizeof(void*)*1, x_167); +if (lean_is_scalar(x_165)) { + x_169 = lean_alloc_ctor(1, 2, 0); +} else { + x_169 = x_165; +} +lean_ctor_set(x_169, 0, x_168); +lean_ctor_set(x_169, 1, x_164); +return x_169; +} +} +else +{ +lean_object* x_170; lean_object* x_171; +x_170 = lean_local_ctx_pop(x_135); +x_171 = l_Lean_Elab_ContextInfo_runMetaM___rarg(x_133, x_170, x_143, x_140); +lean_dec(x_133); +if (lean_obj_tag(x_171) == 0) +{ +lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; +x_172 = lean_ctor_get(x_171, 0); +lean_inc(x_172); +x_173 = lean_ctor_get(x_171, 1); lean_inc(x_173); -x_174 = lean_ctor_get(x_162, 1); -lean_inc(x_174); -lean_dec(x_162); -x_175 = lean_ctor_get(x_165, 0); -lean_inc(x_175); -if (lean_is_exclusive(x_165)) { - lean_ctor_release(x_165, 0); - x_176 = x_165; +if (lean_is_exclusive(x_171)) { + lean_ctor_release(x_171, 0); + lean_ctor_release(x_171, 1); + x_174 = x_171; } else { - lean_dec_ref(x_165); - x_176 = lean_box(0); + lean_dec_ref(x_171); + x_174 = lean_box(0); } -x_177 = l_String_Range_toLspRange(x_4, x_175); -lean_dec(x_175); -x_178 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_178, 0, x_173); -lean_ctor_set(x_178, 1, x_174); -lean_ctor_set(x_178, 2, x_177); -if (lean_is_scalar(x_176)) { - x_179 = lean_alloc_ctor(1, 1, 0); -} else { - x_179 = x_176; -} -lean_ctor_set(x_179, 0, x_178); +x_175 = l_Lean_Elab_Info_range_x3f(x_132); +lean_dec(x_132); +if (lean_obj_tag(x_175) == 0) +{ +lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; +x_176 = lean_ctor_get(x_172, 0); +lean_inc(x_176); +x_177 = lean_ctor_get(x_172, 1); +lean_inc(x_177); +lean_dec(x_172); +lean_inc(x_3); +x_178 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_178, 0, x_3); +lean_ctor_set(x_178, 1, x_3); +x_179 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_179, 0, x_176); +lean_ctor_set(x_179, 1, x_177); +lean_ctor_set(x_179, 2, x_178); x_180 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_180, 0, x_179); -if (lean_is_scalar(x_164)) { +if (lean_is_scalar(x_174)) { x_181 = lean_alloc_ctor(0, 2, 0); } else { - x_181 = x_164; + x_181 = x_174; } lean_ctor_set(x_181, 0, x_180); -lean_ctor_set(x_181, 1, x_163); +lean_ctor_set(x_181, 1, x_173); return x_181; } -} else { -lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; -lean_dec(x_123); +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_dec(x_3); -x_182 = lean_ctor_get(x_161, 0); +x_182 = lean_ctor_get(x_172, 0); lean_inc(x_182); -x_183 = lean_ctor_get(x_161, 1); +x_183 = lean_ctor_get(x_172, 1); lean_inc(x_183); -if (lean_is_exclusive(x_161)) { - lean_ctor_release(x_161, 0); - lean_ctor_release(x_161, 1); - x_184 = x_161; +lean_dec(x_172); +x_184 = lean_ctor_get(x_175, 0); +lean_inc(x_184); +if (lean_is_exclusive(x_175)) { + lean_ctor_release(x_175, 0); + x_185 = x_175; } else { - lean_dec_ref(x_161); - x_184 = lean_box(0); + lean_dec_ref(x_175); + x_185 = lean_box(0); } -if (lean_is_scalar(x_184)) { - x_185 = lean_alloc_ctor(1, 2, 0); +x_186 = l_String_Range_toLspRange(x_4, x_184); +lean_dec(x_184); +x_187 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_187, 0, x_182); +lean_ctor_set(x_187, 1, x_183); +lean_ctor_set(x_187, 2, x_186); +if (lean_is_scalar(x_185)) { + x_188 = lean_alloc_ctor(1, 1, 0); } else { - x_185 = x_184; + x_188 = x_185; } -lean_ctor_set(x_185, 0, x_182); -lean_ctor_set(x_185, 1, x_183); -return x_185; -} -} -} -else -{ -lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; -lean_dec(x_126); -lean_dec(x_125); -lean_dec(x_124); -lean_dec(x_123); -lean_dec(x_3); -x_186 = lean_ctor_get(x_129, 0); -lean_inc(x_186); -x_187 = lean_ctor_get(x_129, 1); -lean_inc(x_187); -if (lean_is_exclusive(x_129)) { - lean_ctor_release(x_129, 0); - lean_ctor_release(x_129, 1); - x_188 = x_129; +lean_ctor_set(x_188, 0, x_187); +if (lean_is_scalar(x_174)) { + x_189 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_129); - x_188 = lean_box(0); + x_189 = x_174; } -if (lean_is_scalar(x_188)) { - x_189 = lean_alloc_ctor(1, 2, 0); -} else { - x_189 = x_188; -} -lean_ctor_set(x_189, 0, x_186); -lean_ctor_set(x_189, 1, x_187); +lean_ctor_set(x_189, 0, x_188); +lean_ctor_set(x_189, 1, x_173); return x_189; } } else { -lean_object* x_190; lean_object* x_191; -lean_dec(x_123); -lean_dec(x_122); +lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; uint8_t x_194; lean_object* x_195; lean_object* x_196; +lean_dec(x_132); lean_dec(x_3); -x_190 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_190, 0, x_2); -x_191 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_191, 0, x_190); -lean_ctor_set(x_191, 1, x_7); -return x_191; +x_190 = lean_ctor_get(x_171, 0); +lean_inc(x_190); +x_191 = lean_ctor_get(x_171, 1); +lean_inc(x_191); +if (lean_is_exclusive(x_171)) { + lean_ctor_release(x_171, 0); + lean_ctor_release(x_171, 1); + x_192 = x_171; +} else { + lean_dec_ref(x_171); + x_192 = lean_box(0); +} +x_193 = lean_io_error_to_string(x_190); +x_194 = 4; +x_195 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_195, 0, x_193); +lean_ctor_set_uint8(x_195, sizeof(void*)*1, x_194); +if (lean_is_scalar(x_192)) { + x_196 = lean_alloc_ctor(1, 2, 0); +} else { + x_196 = x_192; +} +lean_ctor_set(x_196, 0, x_195); +lean_ctor_set(x_196, 1, x_191); +return x_196; +} +} +} +else +{ +lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; uint8_t x_201; lean_object* x_202; lean_object* x_203; +lean_dec(x_135); +lean_dec(x_134); +lean_dec(x_133); +lean_dec(x_132); +lean_dec(x_3); +x_197 = lean_ctor_get(x_138, 0); +lean_inc(x_197); +x_198 = lean_ctor_get(x_138, 1); +lean_inc(x_198); +if (lean_is_exclusive(x_138)) { + lean_ctor_release(x_138, 0); + lean_ctor_release(x_138, 1); + x_199 = x_138; +} else { + lean_dec_ref(x_138); + x_199 = lean_box(0); +} +x_200 = lean_io_error_to_string(x_197); +x_201 = 4; +x_202 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_202, 0, x_200); +lean_ctor_set_uint8(x_202, sizeof(void*)*1, x_201); +if (lean_is_scalar(x_199)) { + x_203 = lean_alloc_ctor(1, 2, 0); +} else { + x_203 = x_199; +} +lean_ctor_set(x_203, 0, x_202); +lean_ctor_set(x_203, 1, x_198); +return x_203; +} +} +else +{ +lean_object* x_204; +lean_dec(x_132); +lean_dec(x_131); +lean_dec(x_3); +x_204 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_204, 0, x_2); +lean_ctor_set(x_204, 1, x_7); +return x_204; } } } @@ -6521,7 +6772,7 @@ return x_191; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -6530,29 +6781,26 @@ lean_inc(x_6); lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 2); +lean_dec(x_7); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); +lean_inc(x_9); +x_10 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_9); lean_inc(x_10); -x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); -lean_inc(x_11); -x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); -lean_closure_set(x_12, 0, x_11); -x_13 = lean_box(0); -x_14 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__3___boxed), 7, 4); -lean_closure_set(x_14, 0, x_11); -lean_closure_set(x_14, 1, x_13); -lean_closure_set(x_14, 2, x_10); -lean_closure_set(x_14, 3, x_9); -x_15 = l_Lean_Server_FileWorker_handleHover___closed__1; -x_16 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_12, x_15, x_14, x_2, x_6); -return x_16; +x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); +lean_closure_set(x_11, 0, x_10); +x_12 = lean_box(0); +x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__3___boxed), 7, 4); +lean_closure_set(x_13, 0, x_10); +lean_closure_set(x_13, 1, x_12); +lean_closure_set(x_13, 2, x_9); +lean_closure_set(x_13, 3, x_8); +x_14 = l_Lean_Server_FileWorker_handleHover___closed__1; +x_15 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_5, x_11, x_14, x_13, x_2, x_6); +return x_15; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { @@ -6617,64 +6865,29 @@ x_4 = l_Lean_Server_FileWorker_getInteractiveTermGoal(x_1, x_2, x_3); x_5 = !lean_is_exclusive(x_4); if (x_5 == 0) { -lean_object* x_6; uint8_t x_7; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_6 = lean_ctor_get(x_4, 0); -x_7 = !lean_is_exclusive(x_6); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_6, 0); -x_9 = l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; -x_10 = l_Task_Priority_default; -x_11 = lean_task_map(x_9, x_8, x_10); -lean_ctor_set(x_6, 0, x_11); +x_7 = l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; +x_8 = l_Task_Priority_default; +x_9 = lean_task_map(x_7, x_6, x_8); +lean_ctor_set(x_4, 0, x_9); return x_4; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -x_13 = l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; -x_14 = l_Task_Priority_default; -x_15 = lean_task_map(x_13, x_12, x_14); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_4, 0, x_16); -return x_4; -} -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_17 = lean_ctor_get(x_4, 0); -x_18 = lean_ctor_get(x_4, 1); -lean_inc(x_18); -lean_inc(x_17); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_10 = lean_ctor_get(x_4, 0); +x_11 = lean_ctor_get(x_4, 1); +lean_inc(x_11); +lean_inc(x_10); lean_dec(x_4); -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -if (lean_is_exclusive(x_17)) { - lean_ctor_release(x_17, 0); - x_20 = x_17; -} else { - lean_dec_ref(x_17); - x_20 = lean_box(0); -} -x_21 = l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; -x_22 = l_Task_Priority_default; -x_23 = lean_task_map(x_21, x_19, x_22); -if (lean_is_scalar(x_20)) { - x_24 = lean_alloc_ctor(1, 1, 0); -} else { - x_24 = x_20; -} -lean_ctor_set(x_24, 0, x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_18); -return x_25; +x_12 = l_Lean_Server_FileWorker_handlePlainTermGoal___closed__3; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_10, x_13); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_11); +return x_15; } } } @@ -7324,33 +7537,32 @@ lean_dec(x_4); x_9 = l_Lean_Server_FileWorker_handleDocumentHighlight_highlightReturn_x3f(x_2, x_3, x_7, x_8); if (lean_obj_tag(x_9) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Server_FileWorker_handleCompletion___lambda__2(x_1, x_10, x_5, x_6); -return x_11; +lean_object* x_10; +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_1); +lean_ctor_set(x_10, 1, x_6); +return x_10; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_dec(x_1); -x_12 = lean_ctor_get(x_9, 0); -lean_inc(x_12); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); lean_dec(x_9); -x_13 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; -x_14 = lean_array_push(x_13, x_12); -x_15 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_15, 0, x_14); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_6); -return x_16; +x_12 = l_Lean_Server_FileWorker_handleDefinition___lambda__2___closed__1; +x_13 = lean_array_push(x_12, x_11); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_6); +return x_14; } } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -7359,27 +7571,24 @@ lean_inc(x_6); lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); -x_9 = lean_ctor_get(x_8, 2); +lean_dec(x_7); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); -x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_10); -lean_inc(x_11); -x_12 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); -lean_closure_set(x_12, 0, x_11); -x_13 = l_Lean_Server_FileWorker_handleCompletion___closed__1; -x_14 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentHighlight___lambda__1___boxed), 6, 3); -lean_closure_set(x_14, 0, x_13); -lean_closure_set(x_14, 1, x_9); -lean_closure_set(x_14, 2, x_11); -x_15 = l_Lean_Server_FileWorker_handleDefinition___closed__1; -x_16 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_7, x_12, x_15, x_14, x_2, x_6); -return x_16; +x_10 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_9); +lean_inc(x_10); +x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover___lambda__1___boxed), 2, 1); +lean_closure_set(x_11, 0, x_10); +x_12 = l_Lean_Server_FileWorker_handleCompletion___closed__1; +x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentHighlight___lambda__1___boxed), 6, 3); +lean_closure_set(x_13, 0, x_12); +lean_closure_set(x_13, 1, x_8); +lean_closure_set(x_13, 2, x_10); +x_14 = l_Lean_Server_FileWorker_handleDefinition___closed__1; +x_15 = l_Lean_Server_RequestM_withWaitFindSnap___rarg(x_5, x_11, x_14, x_13, x_2, x_6); +return x_15; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentHighlight___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { @@ -11795,99 +12004,37 @@ lean_inc(x_3); x_5 = lean_apply_2(x_1, x_3, x_4); if (lean_obj_tag(x_5) == 0) { -lean_object* x_6; +lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) +x_7 = lean_ctor_get(x_5, 1); +lean_inc(x_7); +lean_dec(x_5); +x_8 = lean_apply_3(x_2, x_6, x_3, x_7); +return x_8; +} +else { -uint8_t x_7; +uint8_t x_9; lean_dec(x_3); lean_dec(x_2); -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) -{ -lean_object* x_8; uint8_t x_9; -x_8 = lean_ctor_get(x_5, 0); -lean_dec(x_8); -x_9 = !lean_is_exclusive(x_6); +x_9 = !lean_is_exclusive(x_5); if (x_9 == 0) { return x_5; } else { -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_6, 0); +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_5, 0); +x_11 = lean_ctor_get(x_5, 1); +lean_inc(x_11); lean_inc(x_10); -lean_dec(x_6); -x_11 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_5, 0, x_11); -return x_5; -} -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_5, 1); -lean_inc(x_12); lean_dec(x_5); -x_13 = lean_ctor_get(x_6, 0); -lean_inc(x_13); -if (lean_is_exclusive(x_6)) { - lean_ctor_release(x_6, 0); - x_14 = x_6; -} else { - lean_dec_ref(x_6); - x_14 = lean_box(0); -} -if (lean_is_scalar(x_14)) { - x_15 = lean_alloc_ctor(0, 1, 0); -} else { - x_15 = x_14; -} -lean_ctor_set(x_15, 0, x_13); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_12); -return x_16; -} -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_5, 1); -lean_inc(x_17); -lean_dec(x_5); -x_18 = lean_ctor_get(x_6, 0); -lean_inc(x_18); -lean_dec(x_6); -x_19 = lean_apply_3(x_2, x_18, x_3, x_17); -return x_19; -} -} -else -{ -uint8_t x_20; -lean_dec(x_3); -lean_dec(x_2); -x_20 = !lean_is_exclusive(x_5); -if (x_20 == 0) -{ -return x_5; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_5, 0); -x_22 = lean_ctor_get(x_5, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_5); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; +x_12 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; } } } @@ -11908,27 +12055,20 @@ x_4 = l_IO_AsyncList_updateFinishedPrefix___rarg(x_1, x_3); x_5 = !lean_is_exclusive(x_4); if (x_5 == 0) { -lean_object* x_6; lean_object* x_7; -x_6 = lean_ctor_get(x_4, 0); -x_7 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_7, 0, x_6); -lean_ctor_set(x_4, 0, x_7); return x_4; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_4, 0); -x_9 = lean_ctor_get(x_4, 1); -lean_inc(x_9); -lean_inc(x_8); +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_ctor_get(x_4, 0); +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +lean_inc(x_6); lean_dec(x_4); -x_10 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_10, 0, x_8); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_9); -return x_11; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_6); +lean_ctor_set(x_8, 1, x_7); +return x_8; } } } @@ -11952,7 +12092,7 @@ x_12 = l_Lean_Server_Snapshots_parseAhead(x_11, x_8, x_6); x_13 = !lean_is_exclusive(x_12); if (x_13 == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; x_14 = lean_ctor_get(x_12, 0); x_15 = lean_array_to_list(lean_box(0), x_14); x_16 = l_List_appendTR___rarg(x_3, x_15); @@ -11964,48 +12104,34 @@ x_19 = l_List_redLength___rarg(x_18); x_20 = lean_mk_empty_array_with_capacity(x_19); lean_dec(x_19); x_21 = l_List_toArrayAux___rarg(x_18, x_20); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_12, 0, x_22); +lean_ctor_set(x_12, 0, x_21); return x_12; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_23 = lean_ctor_get(x_12, 0); -x_24 = lean_ctor_get(x_12, 1); -lean_inc(x_24); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_22 = lean_ctor_get(x_12, 0); +x_23 = lean_ctor_get(x_12, 1); lean_inc(x_23); +lean_inc(x_22); lean_dec(x_12); -x_25 = lean_array_to_list(lean_box(0), x_23); -x_26 = l_List_appendTR___rarg(x_3, x_25); -x_27 = l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols(x_10, x_26); -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -lean_dec(x_27); -x_29 = l_List_redLength___rarg(x_28); -x_30 = lean_mk_empty_array_with_capacity(x_29); -lean_dec(x_29); -x_31 = l_List_toArrayAux___rarg(x_28, x_30); -x_32 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_32, 0, x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_24); -return x_33; +x_24 = lean_array_to_list(lean_box(0), x_22); +x_25 = l_List_appendTR___rarg(x_3, x_24); +x_26 = l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols(x_10, x_25); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +lean_dec(x_26); +x_28 = l_List_redLength___rarg(x_27); +x_29 = lean_mk_empty_array_with_capacity(x_28); +lean_dec(x_28); +x_30 = l_List_toArrayAux___rarg(x_27, x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_23); +return x_31; } } } -static lean_object* _init_l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_RequestError_fileChanged; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -12042,8 +12168,8 @@ lean_dec(x_9); lean_dec(x_7); lean_dec(x_3); lean_dec(x_1); -x_13 = l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1; -x_14 = lean_alloc_ctor(0, 2, 0); +x_13 = l_Lean_Server_RequestError_fileChanged; +x_14 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_14, 0, x_13); lean_ctor_set(x_14, 1, x_4); return x_14; @@ -12058,7 +12184,7 @@ return x_16; } default: { -lean_object* x_17; lean_object* x_18; +lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_dec(x_9); lean_dec(x_7); lean_dec(x_3); @@ -12066,10 +12192,15 @@ lean_dec(x_1); x_17 = lean_ctor_get(x_12, 0); lean_inc(x_17); lean_dec(x_12); -x_18 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_4); -return x_18; +x_18 = lean_io_error_to_string(x_17); +x_19 = 4; +x_20 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_19); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_4); +return x_21; } } } @@ -12078,27 +12209,24 @@ return x_18; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol___rarg(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; x_3 = l_Lean_Server_RequestM_readDoc(x_1, x_2); x_4 = lean_ctor_get(x_3, 0); lean_inc(x_4); x_5 = lean_ctor_get(x_3, 1); lean_inc(x_5); lean_dec(x_3); -x_6 = lean_ctor_get(x_4, 0); +x_6 = lean_ctor_get(x_4, 2); lean_inc(x_6); -lean_dec(x_4); -x_7 = lean_ctor_get(x_6, 2); -lean_inc(x_7); -x_8 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__1___boxed), 3, 1); -lean_closure_set(x_8, 0, x_7); -x_9 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3), 4, 1); -lean_closure_set(x_9, 0, x_6); -x_10 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg), 4, 2); -lean_closure_set(x_10, 0, x_8); -lean_closure_set(x_10, 1, x_9); -x_11 = l_Lean_Server_RequestM_asTask___rarg(x_10, x_1, x_5); -return x_11; +x_7 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__1___boxed), 3, 1); +lean_closure_set(x_7, 0, x_6); +x_8 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3), 4, 1); +lean_closure_set(x_8, 0, x_4); +x_9 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg), 4, 2); +lean_closure_set(x_9, 0, x_7); +lean_closure_set(x_9, 1, x_8); +x_10 = l_Lean_Server_RequestM_asTask___rarg(x_9, x_1, x_5); +return x_10; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleDocumentSymbol(lean_object* x_1) { @@ -12305,168 +12433,156 @@ x_10 = 0; x_11 = l_Lean_Syntax_getPos_x3f(x_1, x_10); if (lean_obj_tag(x_11) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_dec(x_1); x_12 = lean_box(0); x_13 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_13, 0, x_12); lean_ctor_set(x_13, 1, x_4); -x_14 = lean_alloc_ctor(1, 1, 0); +x_14 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_14, 0, x_13); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_6); -return x_15; +lean_ctor_set(x_14, 1, x_6); +return x_14; } else { -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_11, 0); -lean_inc(x_16); +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_11, 0); +lean_inc(x_15); lean_dec(x_11); -x_17 = l_Lean_Syntax_getTailPos_x3f(x_1, x_10); -if (lean_obj_tag(x_17) == 0) +x_16 = l_Lean_Syntax_getTailPos_x3f(x_1, x_10); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -lean_dec(x_16); -x_18 = lean_box(0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_dec(x_15); +x_17 = lean_box(0); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_4); x_19 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_4); -x_20 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_20, 0, x_19); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_6); -return x_21; +lean_ctor_set(x_19, 1, x_6); +return x_19; } else { -lean_object* x_22; uint8_t x_23; -x_22 = lean_ctor_get(x_17, 0); -lean_inc(x_22); -lean_dec(x_17); -x_23 = lean_nat_dec_le(x_7, x_16); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_22); +lean_object* x_20; uint8_t x_21; +x_20 = lean_ctor_get(x_16, 0); +lean_inc(x_20); lean_dec(x_16); -x_24 = lean_box(0); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_4); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); +x_21 = lean_nat_dec_le(x_7, x_15); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_20); +lean_dec(x_15); +x_22 = lean_box(0); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_4); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_6); +return x_24; +} +else +{ +uint8_t x_25; +x_25 = lean_nat_dec_lt(x_15, x_8); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_20); +lean_dec(x_15); +x_26 = lean_box(0); x_27 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_6); -return x_27; +lean_ctor_set(x_27, 1, x_4); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_6); +return x_28; } else { -uint8_t x_28; -x_28 = lean_nat_dec_lt(x_16, x_8); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_22); -lean_dec(x_16); -x_29 = lean_box(0); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_4); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_30); -x_32 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_6); -return x_32; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_33 = lean_ctor_get(x_4, 1); -lean_inc(x_33); -x_34 = l_Lean_FileMap_utf8PosToLspPos(x_9, x_16); -lean_dec(x_16); -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_33, 0); -lean_inc(x_36); -x_37 = lean_nat_sub(x_35, x_36); -x_38 = lean_ctor_get(x_34, 1); -lean_inc(x_38); -x_39 = lean_nat_dec_eq(x_35, x_36); +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_29 = lean_ctor_get(x_4, 1); +lean_inc(x_29); +x_30 = l_Lean_FileMap_utf8PosToLspPos(x_9, x_15); +lean_dec(x_15); +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_29, 0); +lean_inc(x_32); +x_33 = lean_nat_sub(x_31, x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_nat_dec_eq(x_31, x_32); +lean_dec(x_32); +lean_dec(x_31); +x_36 = l_Lean_FileMap_utf8PosToLspPos(x_9, x_20); +lean_dec(x_20); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); lean_dec(x_36); -lean_dec(x_35); -x_40 = l_Lean_FileMap_utf8PosToLspPos(x_9, x_22); -lean_dec(x_22); -x_41 = lean_ctor_get(x_40, 1); -lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_nat_sub(x_41, x_38); -lean_dec(x_41); -x_43 = l_Lean_Lsp_SemanticTokenType_toNat(x_2); -x_44 = lean_ctor_get(x_4, 0); -lean_inc(x_44); +x_38 = lean_nat_sub(x_37, x_34); +lean_dec(x_37); +x_39 = l_Lean_Lsp_SemanticTokenType_toNat(x_2); +x_40 = lean_ctor_get(x_4, 0); +lean_inc(x_40); lean_dec(x_4); -x_45 = l_Lean_Server_FileWorker_noHighlightKinds___closed__11; -x_46 = lean_array_push(x_45, x_37); -if (x_39 == 0) +x_41 = l_Lean_Server_FileWorker_noHighlightKinds___closed__11; +x_42 = lean_array_push(x_41, x_33); +if (x_35 == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_33); -x_47 = lean_unsigned_to_nat(0u); -x_48 = lean_nat_sub(x_38, x_47); -lean_dec(x_38); -x_49 = lean_array_push(x_46, x_48); -x_50 = lean_array_push(x_49, x_42); -x_51 = lean_array_push(x_50, x_43); -x_52 = lean_array_push(x_51, x_47); -x_53 = l_Array_append___rarg(x_44, x_52); -x_54 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_34); -x_55 = lean_box(0); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_54); -x_57 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_57, 0, x_56); -x_58 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_58, 0, x_57); -lean_ctor_set(x_58, 1, x_6); -return x_58; +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_29); +x_43 = lean_unsigned_to_nat(0u); +x_44 = lean_nat_sub(x_34, x_43); +lean_dec(x_34); +x_45 = lean_array_push(x_42, x_44); +x_46 = lean_array_push(x_45, x_38); +x_47 = lean_array_push(x_46, x_39); +x_48 = lean_array_push(x_47, x_43); +x_49 = l_Array_append___rarg(x_40, x_48); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_30); +x_51 = lean_box(0); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_50); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_6); +return x_53; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_59 = lean_ctor_get(x_33, 1); -lean_inc(x_59); -lean_dec(x_33); -x_60 = lean_nat_sub(x_38, x_59); -lean_dec(x_59); -lean_dec(x_38); -x_61 = lean_array_push(x_46, x_60); -x_62 = lean_array_push(x_61, x_42); -x_63 = lean_array_push(x_62, x_43); -x_64 = lean_unsigned_to_nat(0u); -x_65 = lean_array_push(x_63, x_64); -x_66 = l_Array_append___rarg(x_44, x_65); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_34); -x_68 = lean_box(0); -x_69 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_69, 0, x_68); -lean_ctor_set(x_69, 1, x_67); -x_70 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_70, 0, x_69); -x_71 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_6); -return x_71; +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_54 = lean_ctor_get(x_29, 1); +lean_inc(x_54); +lean_dec(x_29); +x_55 = lean_nat_sub(x_34, x_54); +lean_dec(x_54); +lean_dec(x_34); +x_56 = lean_array_push(x_42, x_55); +x_57 = lean_array_push(x_56, x_38); +x_58 = lean_array_push(x_57, x_39); +x_59 = lean_unsigned_to_nat(0u); +x_60 = lean_array_push(x_58, x_59); +x_61 = l_Array_append___rarg(x_40, x_60); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_30); +x_63 = lean_box(0); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_62); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_6); +return x_65; } } } @@ -12486,358 +12602,227 @@ lean_dec(x_3); return x_8; } } -static lean_object* _init_l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1() { +LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: +if (lean_obj_tag(x_1) == 0) { -if (lean_obj_tag(x_2) == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_7; lean_object* x_8; +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_2); +lean_ctor_set(x_7, 1, x_4); x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_3); -lean_ctor_set(x_8, 1, x_5); -x_9 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_7); -return x_10; +lean_ctor_set(x_8, 0, x_7); +lean_ctor_set(x_8, 1, x_6); +return x_8; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_21; -lean_dec(x_3); -x_11 = lean_ctor_get(x_2, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_2, 1); -lean_inc(x_12); -lean_dec(x_2); -x_21 = lean_ctor_get(x_11, 3); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 1) +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_18; +x_9 = lean_ctor_get(x_1, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_1, 1); +lean_inc(x_10); +lean_dec(x_1); +x_18 = lean_ctor_get(x_9, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 1) { -lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; -lean_dec(x_21); -x_22 = lean_ctor_get(x_11, 0); -lean_inc(x_22); -lean_dec(x_11); -x_23 = lean_ctor_get(x_22, 1); +lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +lean_dec(x_18); +x_19 = lean_ctor_get(x_9, 0); +lean_inc(x_19); +lean_dec(x_9); +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = 1; +x_22 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_20, x_21, x_3, x_4, x_5, x_6); +x_23 = lean_ctor_get(x_22, 0); lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); lean_dec(x_22); -x_24 = 1; -x_25 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_23, x_24, x_4, x_5, x_6, x_7); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +x_25 = !lean_is_exclusive(x_23); +if (x_25 == 0) { -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_26, 0); -x_29 = lean_ctor_get(x_25, 1); -lean_inc(x_29); -lean_dec(x_25); -x_30 = !lean_is_exclusive(x_28); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_28, 0); -lean_dec(x_31); -x_32 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -lean_ctor_set(x_28, 0, x_32); -x_13 = x_26; -x_14 = x_29; -goto block_20; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = lean_ctor_get(x_28, 1); -lean_inc(x_33); -lean_dec(x_28); -x_34 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_26, 0, x_35); -x_13 = x_26; -x_14 = x_29; -goto block_20; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_36 = lean_ctor_get(x_26, 0); -lean_inc(x_36); +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_23, 0); lean_dec(x_26); -x_37 = lean_ctor_get(x_25, 1); -lean_inc(x_37); -lean_dec(x_25); -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); -if (lean_is_exclusive(x_36)) { - lean_ctor_release(x_36, 0); - lean_ctor_release(x_36, 1); - x_39 = x_36; -} else { - lean_dec_ref(x_36); - x_39 = lean_box(0); +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_2); +lean_ctor_set(x_23, 0, x_27); +x_11 = x_23; +x_12 = x_24; +goto block_17; } -x_40 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -if (lean_is_scalar(x_39)) { - x_41 = lean_alloc_ctor(0, 2, 0); -} else { - x_41 = x_39; -} -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_38); -x_42 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_42, 0, x_41); -x_13 = x_42; -x_14 = x_37; -goto block_20; +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_23, 1); +lean_inc(x_28); +lean_dec(x_23); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_2); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +x_11 = x_30; +x_12 = x_24; +goto block_17; } } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; lean_object* x_47; -lean_dec(x_21); -x_43 = lean_ctor_get(x_1, 0); -x_44 = lean_ctor_get(x_11, 0); -lean_inc(x_44); -lean_dec(x_11); -x_45 = lean_ctor_get(x_44, 1); -lean_inc(x_45); -lean_dec(x_44); -x_46 = 0; -x_47 = l_Lean_Syntax_getPos_x3f(x_45, x_46); -if (lean_obj_tag(x_47) == 0) +lean_object* x_31; lean_object* x_32; uint8_t x_33; lean_object* x_34; +lean_dec(x_18); +x_31 = lean_ctor_get(x_9, 0); +lean_inc(x_31); +lean_dec(x_9); +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = 0; +x_34 = l_Lean_Syntax_getPos_x3f(x_32, x_33); +if (lean_obj_tag(x_34) == 0) { -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; -x_49 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_48); -x_50 = lean_nat_dec_lt(x_43, x_49); -lean_dec(x_49); -if (x_50 == 0) +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = l_Lean_Server_FileWorker_handleHover___lambda__2___closed__4; +x_36 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_35); +x_37 = lean_nat_dec_lt(x_2, x_36); +if (x_37 == 0) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_object* x_38; lean_object* x_39; +lean_dec(x_36); +lean_dec(x_32); +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_2); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_4); +x_11 = x_39; +x_12 = x_6; +goto block_17; +} +else +{ +uint8_t x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +lean_dec(x_2); +x_40 = 2; +x_41 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_32, x_40, x_3, x_4, x_5, x_6); +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 1); +lean_inc(x_43); +lean_dec(x_41); +x_44 = !lean_is_exclusive(x_42); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_42, 0); lean_dec(x_45); -x_51 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_5); -x_53 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_53, 0, x_52); -x_13 = x_53; -x_14 = x_7; -goto block_20; +x_46 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_46, 0, x_36); +lean_ctor_set(x_42, 0, x_46); +x_11 = x_42; +x_12 = x_43; +goto block_17; } else { -uint8_t x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_42, 1); +lean_inc(x_47); +lean_dec(x_42); +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_36); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_47); +x_11 = x_49; +x_12 = x_43; +goto block_17; +} +} +} +else +{ +lean_object* x_50; uint8_t x_51; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +x_51 = lean_nat_dec_lt(x_2, x_50); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_50); +lean_dec(x_32); +x_52 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_52, 0, x_2); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_4); +x_11 = x_53; +x_12 = x_6; +goto block_17; +} +else +{ +uint8_t x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +lean_dec(x_2); x_54 = 2; -x_55 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_45, x_54, x_4, x_5, x_6, x_7); +x_55 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_32, x_54, x_3, x_4, x_5, x_6); x_56 = lean_ctor_get(x_55, 0); lean_inc(x_56); -x_57 = !lean_is_exclusive(x_56); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; uint8_t x_60; -x_58 = lean_ctor_get(x_56, 0); -x_59 = lean_ctor_get(x_55, 1); -lean_inc(x_59); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); lean_dec(x_55); -x_60 = !lean_is_exclusive(x_58); -if (x_60 == 0) +x_58 = !lean_is_exclusive(x_56); +if (x_58 == 0) { -lean_object* x_61; lean_object* x_62; -x_61 = lean_ctor_get(x_58, 0); -lean_dec(x_61); -x_62 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -lean_ctor_set(x_58, 0, x_62); -x_13 = x_56; -x_14 = x_59; -goto block_20; +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_56, 0); +lean_dec(x_59); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_50); +lean_ctor_set(x_56, 0, x_60); +x_11 = x_56; +x_12 = x_57; +goto block_17; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_58, 1); -lean_inc(x_63); -lean_dec(x_58); -x_64 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_63); -lean_ctor_set(x_56, 0, x_65); -x_13 = x_56; -x_14 = x_59; -goto block_20; -} -} -else -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_66 = lean_ctor_get(x_56, 0); -lean_inc(x_66); +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_56, 1); +lean_inc(x_61); lean_dec(x_56); -x_67 = lean_ctor_get(x_55, 1); -lean_inc(x_67); -lean_dec(x_55); -x_68 = lean_ctor_get(x_66, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_66)) { - lean_ctor_release(x_66, 0); - lean_ctor_release(x_66, 1); - x_69 = x_66; -} else { - lean_dec_ref(x_66); - x_69 = lean_box(0); -} -x_70 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -if (lean_is_scalar(x_69)) { - x_71 = lean_alloc_ctor(0, 2, 0); -} else { - x_71 = x_69; -} -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_68); -x_72 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_72, 0, x_71); -x_13 = x_72; -x_14 = x_67; -goto block_20; +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_50); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_61); +x_11 = x_63; +x_12 = x_57; +goto block_17; } } } -else +} +block_17: { -lean_object* x_73; uint8_t x_74; -x_73 = lean_ctor_get(x_47, 0); -lean_inc(x_73); -lean_dec(x_47); -x_74 = lean_nat_dec_lt(x_43, x_73); -lean_dec(x_73); -if (x_74 == 0) -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_45); -x_75 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_5); -x_77 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_77, 0, x_76); -x_13 = x_77; -x_14 = x_7; -goto block_20; -} -else -{ -uint8_t x_78; lean_object* x_79; lean_object* x_80; uint8_t x_81; -x_78 = 2; -x_79 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_45, x_78, x_4, x_5, x_6, x_7); -x_80 = lean_ctor_get(x_79, 0); -lean_inc(x_80); -x_81 = !lean_is_exclusive(x_80); -if (x_81 == 0) -{ -lean_object* x_82; lean_object* x_83; uint8_t x_84; -x_82 = lean_ctor_get(x_80, 0); -x_83 = lean_ctor_get(x_79, 1); -lean_inc(x_83); -lean_dec(x_79); -x_84 = !lean_is_exclusive(x_82); -if (x_84 == 0) -{ -lean_object* x_85; lean_object* x_86; -x_85 = lean_ctor_get(x_82, 0); -lean_dec(x_85); -x_86 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -lean_ctor_set(x_82, 0, x_86); -x_13 = x_80; -x_14 = x_83; -goto block_20; -} -else -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_82, 1); -lean_inc(x_87); -lean_dec(x_82); -x_88 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_89 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_89, 0, x_88); -lean_ctor_set(x_89, 1, x_87); -lean_ctor_set(x_80, 0, x_89); -x_13 = x_80; -x_14 = x_83; -goto block_20; -} -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_90 = lean_ctor_get(x_80, 0); -lean_inc(x_90); -lean_dec(x_80); -x_91 = lean_ctor_get(x_79, 1); -lean_inc(x_91); -lean_dec(x_79); -x_92 = lean_ctor_get(x_90, 1); -lean_inc(x_92); -if (lean_is_exclusive(x_90)) { - lean_ctor_release(x_90, 0); - lean_ctor_release(x_90, 1); - x_93 = x_90; -} else { - lean_dec_ref(x_90); - x_93 = lean_box(0); -} -x_94 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -if (lean_is_scalar(x_93)) { - x_95 = lean_alloc_ctor(0, 2, 0); -} else { - x_95 = x_93; -} -lean_ctor_set(x_95, 0, x_94); -lean_ctor_set(x_95, 1, x_92); -x_96 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_96, 0, x_95); -x_13 = x_96; -x_14 = x_91; -goto block_20; -} -} -} -} -block_20: -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_dec(x_11); x_15 = lean_ctor_get(x_13, 0); lean_inc(x_15); lean_dec(x_13); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -lean_dec(x_16); -x_2 = x_12; -x_3 = x_18; -x_5 = x_17; -x_7 = x_14; +x_1 = x_10; +x_2 = x_15; +x_4 = x_14; +x_6 = x_12; goto _start; } } @@ -12922,158 +12907,104 @@ x_6 = 0; x_7 = l_Lean_Syntax_getRange_x3f(x_1, x_6); if (lean_obj_tag(x_7) == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_dec(x_2); x_8 = lean_box(0); x_9 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_3); -x_10 = lean_alloc_ctor(1, 1, 0); +x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_9); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_5); -return x_11; +lean_ctor_set(x_10, 1, x_5); +return x_10; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_12 = lean_ctor_get(x_7, 0); -lean_inc(x_12); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_11 = lean_ctor_get(x_7, 0); +lean_inc(x_11); lean_dec(x_7); +x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); x_13 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokens_highlightId___lambda__1___boxed), 4, 1); -lean_closure_set(x_13, 0, x_12); +lean_closure_set(x_13, 0, x_11); x_14 = lean_ctor_get(x_2, 3); lean_inc(x_14); x_15 = l_Lean_Server_Snapshots_Snapshot_infoTree(x_14); x_16 = l_Lean_Elab_InfoTree_deepestNodes___rarg(x_13, x_15); -x_17 = lean_box(0); -x_18 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(x_12, x_16, x_17, x_2, x_3, x_4, x_5); +x_17 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(x_16, x_12, x_2, x_3, x_4, x_5); lean_dec(x_2); -lean_dec(x_12); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_17, 0); x_20 = !lean_is_exclusive(x_19); if (x_20 == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_18); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_19, 0); -x_23 = lean_ctor_get(x_18, 0); -lean_dec(x_23); -x_24 = !lean_is_exclusive(x_22); -if (x_24 == 0) -{ -lean_object* x_25; -x_25 = lean_ctor_get(x_22, 0); -lean_dec(x_25); -lean_ctor_set(x_22, 0, x_17); -return x_18; +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +lean_dec(x_21); +x_22 = lean_box(0); +lean_ctor_set(x_19, 0, x_22); +return x_17; } else { -lean_object* x_26; lean_object* x_27; -x_26 = lean_ctor_get(x_22, 1); -lean_inc(x_26); -lean_dec(x_22); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_17); -lean_ctor_set(x_27, 1, x_26); -lean_ctor_set(x_19, 0, x_27); -return x_18; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_19, 0); -x_29 = lean_ctor_get(x_18, 1); -lean_inc(x_29); -lean_dec(x_18); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -if (lean_is_exclusive(x_28)) { - lean_ctor_release(x_28, 0); - lean_ctor_release(x_28, 1); - x_31 = x_28; -} else { - lean_dec_ref(x_28); - x_31 = lean_box(0); -} -if (lean_is_scalar(x_31)) { - x_32 = lean_alloc_ctor(0, 2, 0); -} else { - x_32 = x_31; -} -lean_ctor_set(x_32, 0, x_17); -lean_ctor_set(x_32, 1, x_30); -lean_ctor_set(x_19, 0, x_32); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_19); -lean_ctor_set(x_33, 1, x_29); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_34 = lean_ctor_get(x_19, 0); -lean_inc(x_34); +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_19, 1); +lean_inc(x_23); lean_dec(x_19); -x_35 = lean_ctor_get(x_18, 1); -lean_inc(x_35); -if (lean_is_exclusive(x_18)) { - lean_ctor_release(x_18, 0); - lean_ctor_release(x_18, 1); - x_36 = x_18; +x_24 = lean_box(0); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +lean_ctor_set(x_17, 0, x_25); +return x_17; +} +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_26 = lean_ctor_get(x_17, 0); +x_27 = lean_ctor_get(x_17, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_17); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +if (lean_is_exclusive(x_26)) { + lean_ctor_release(x_26, 0); + lean_ctor_release(x_26, 1); + x_29 = x_26; } else { - lean_dec_ref(x_18); - x_36 = lean_box(0); + lean_dec_ref(x_26); + x_29 = lean_box(0); } -x_37 = lean_ctor_get(x_34, 1); -lean_inc(x_37); -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - lean_ctor_release(x_34, 1); - x_38 = x_34; +x_30 = lean_box(0); +if (lean_is_scalar(x_29)) { + x_31 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_34); - x_38 = lean_box(0); + x_31 = x_29; } -if (lean_is_scalar(x_38)) { - x_39 = lean_alloc_ctor(0, 2, 0); -} else { - x_39 = x_38; -} -lean_ctor_set(x_39, 0, x_17); -lean_ctor_set(x_39, 1, x_37); -x_40 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_40, 0, x_39); -if (lean_is_scalar(x_36)) { - x_41 = lean_alloc_ctor(0, 2, 0); -} else { - x_41 = x_36; -} -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_35); -return x_41; +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_28); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_27); +return x_32; } } } } -LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { -lean_object* x_8; -x_8 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_4); -lean_dec(x_1); -return x_8; +lean_object* x_7; +x_7 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_3); +return x_7; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens_highlightId___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { @@ -13111,64 +13042,58 @@ x_9 = lean_nat_dec_lt(x_8, x_7); lean_dec(x_7); if (x_9 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_dec(x_6); lean_dec(x_1); x_10 = lean_box(0); x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_3); -x_12 = lean_alloc_ctor(1, 1, 0); +x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_5); -return x_13; +lean_ctor_set(x_12, 1, x_5); +return x_12; } else { -uint32_t x_14; uint8_t x_15; -x_14 = lean_string_utf8_get(x_6, x_8); +uint32_t x_13; uint8_t x_14; +x_13 = lean_string_utf8_get(x_6, x_8); lean_dec(x_6); -x_15 = l_Char_isAlpha(x_14); -if (x_15 == 0) +x_14 = l_Char_isAlpha(x_13); +if (x_14 == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_16 = lean_box(0); +x_15 = lean_box(0); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_3); x_17 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_3); -x_18 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_18, 0, x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_5); +lean_ctor_set(x_17, 1, x_5); +return x_17; +} +else +{ +uint8_t x_18; lean_object* x_19; +x_18 = 0; +x_19 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_1, x_18, x_2, x_3, x_4, x_5); return x_19; } -else -{ -uint8_t x_20; lean_object* x_21; -x_20 = 0; -x_21 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_1, x_20, x_2, x_3, x_4, x_5); -return x_21; -} } } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_dec(x_1); -x_22 = lean_box(0); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_3); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_5); -return x_25; +x_20 = lean_box(0); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_3); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_5); +return x_22; } } } @@ -13260,7 +13185,7 @@ uint8_t x_9; x_9 = lean_usize_dec_eq(x_2, x_3); if (x_9 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; size_t x_16; size_t x_17; lean_dec(x_4); x_10 = lean_array_uget(x_1, x_2); lean_inc(x_7); @@ -13268,39 +13193,34 @@ lean_inc(x_5); x_11 = l_Lean_Server_FileWorker_handleSemanticTokens_go(x_10, x_5, x_6, x_7, x_8); x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); -x_13 = lean_ctor_get(x_12, 0); +x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_11, 1); -lean_inc(x_14); lean_dec(x_11); -x_15 = lean_ctor_get(x_13, 0); +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_12, 1); lean_inc(x_15); -x_16 = lean_ctor_get(x_13, 1); -lean_inc(x_16); -lean_dec(x_13); -x_17 = 1; -x_18 = lean_usize_add(x_2, x_17); -x_2 = x_18; -x_4 = x_15; -x_6 = x_16; -x_8 = x_14; +lean_dec(x_12); +x_16 = 1; +x_17 = lean_usize_add(x_2, x_16); +x_2 = x_17; +x_4 = x_14; +x_6 = x_15; +x_8 = x_13; goto _start; } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_19; lean_object* x_20; lean_dec(x_7); lean_dec(x_5); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_4); +lean_ctor_set(x_19, 1, x_6); x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_4); -lean_ctor_set(x_20, 1, x_6); -x_21 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_21, 0, x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_8); -return x_22; +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_8); +return x_20; } } } @@ -13345,883 +13265,604 @@ x_12 = l_Array_contains___at_Lean_Server_FileWorker_handleSemanticTokens_go___sp lean_dec(x_10); if (x_12 == 0) { -lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_object* x_13; uint8_t x_14; lean_inc(x_1); x_13 = l_Lean_Server_FileWorker_handleSemanticTokens_highlightKeyword(x_1, x_2, x_3, x_4, x_5); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_13); +lean_object* x_15; uint8_t x_16; +x_15 = lean_ctor_get(x_13, 0); +x_16 = !lean_is_exclusive(x_15); if (x_16 == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_17 = lean_ctor_get(x_14, 0); -x_18 = lean_ctor_get(x_13, 1); -x_19 = lean_ctor_get(x_13, 0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_17 = lean_ctor_get(x_13, 1); +x_18 = lean_ctor_get(x_15, 1); +x_19 = lean_ctor_get(x_15, 0); lean_dec(x_19); -x_20 = !lean_is_exclusive(x_17); -if (x_20 == 0) +x_20 = l_Lean_choiceKind; +lean_inc(x_1); +x_21 = l_Lean_Syntax_isOfKind(x_1, x_20); +if (x_21 == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_21 = lean_ctor_get(x_17, 1); -x_22 = lean_ctor_get(x_17, 0); +lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_22 = l_Lean_Syntax_getArgs(x_1); +lean_dec(x_1); +x_23 = lean_array_get_size(x_22); +x_24 = lean_unsigned_to_nat(0u); +x_25 = lean_nat_dec_lt(x_24, x_23); +if (x_25 == 0) +{ +lean_object* x_26; +lean_dec(x_23); lean_dec(x_22); -x_23 = l_Lean_choiceKind; -lean_inc(x_1); -x_24 = l_Lean_Syntax_isOfKind(x_1, x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_25 = l_Lean_Syntax_getArgs(x_1); -lean_dec(x_1); -x_26 = lean_array_get_size(x_25); -x_27 = lean_unsigned_to_nat(0u); -x_28 = lean_nat_dec_lt(x_27, x_26); -if (x_28 == 0) -{ -lean_object* x_29; -lean_dec(x_26); -lean_dec(x_25); lean_dec(x_4); lean_dec(x_2); -x_29 = lean_box(0); -lean_ctor_set(x_17, 0, x_29); +x_26 = lean_box(0); +lean_ctor_set(x_15, 0, x_26); return x_13; } else { -uint8_t x_30; -x_30 = lean_nat_dec_le(x_26, x_26); -if (x_30 == 0) +uint8_t x_27; +x_27 = lean_nat_dec_le(x_23, x_23); +if (x_27 == 0) { -lean_object* x_31; -lean_dec(x_26); -lean_dec(x_25); +lean_object* x_28; +lean_dec(x_23); +lean_dec(x_22); lean_dec(x_4); lean_dec(x_2); +x_28 = lean_box(0); +lean_ctor_set(x_15, 0, x_28); +return x_13; +} +else +{ +size_t x_29; size_t x_30; lean_object* x_31; lean_object* x_32; +lean_free_object(x_15); +lean_free_object(x_13); +x_29 = 0; +x_30 = lean_usize_of_nat(x_23); +lean_dec(x_23); x_31 = lean_box(0); -lean_ctor_set(x_17, 0, x_31); -return x_13; -} -else -{ -size_t x_32; size_t x_33; lean_object* x_34; lean_object* x_35; -lean_free_object(x_17); -lean_free_object(x_13); -lean_free_object(x_14); -x_32 = 0; -x_33 = lean_usize_of_nat(x_26); -lean_dec(x_26); -x_34 = lean_box(0); -x_35 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_25, x_32, x_33, x_34, x_2, x_21, x_4, x_18); -lean_dec(x_25); -return x_35; +x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_22, x_29, x_30, x_31, x_2, x_18, x_4, x_17); +lean_dec(x_22); +return x_32; } } } else { -lean_object* x_36; lean_object* x_37; -lean_free_object(x_17); +lean_object* x_33; lean_object* x_34; +lean_free_object(x_15); lean_free_object(x_13); -lean_free_object(x_14); -x_36 = lean_unsigned_to_nat(0u); -x_37 = l_Lean_Syntax_getArg(x_1, x_36); +x_33 = lean_unsigned_to_nat(0u); +x_34 = l_Lean_Syntax_getArg(x_1, x_33); lean_dec(x_1); -x_1 = x_37; -x_3 = x_21; -x_5 = x_18; +x_1 = x_34; +x_3 = x_18; +x_5 = x_17; goto _start; } } else { -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_17, 1); -lean_inc(x_39); -lean_dec(x_17); -x_40 = l_Lean_choiceKind; +lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_36 = lean_ctor_get(x_13, 1); +x_37 = lean_ctor_get(x_15, 1); +lean_inc(x_37); +lean_dec(x_15); +x_38 = l_Lean_choiceKind; lean_inc(x_1); -x_41 = l_Lean_Syntax_isOfKind(x_1, x_40); -if (x_41 == 0) +x_39 = l_Lean_Syntax_isOfKind(x_1, x_38); +if (x_39 == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_42 = l_Lean_Syntax_getArgs(x_1); +lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_40 = l_Lean_Syntax_getArgs(x_1); lean_dec(x_1); -x_43 = lean_array_get_size(x_42); -x_44 = lean_unsigned_to_nat(0u); -x_45 = lean_nat_dec_lt(x_44, x_43); -if (x_45 == 0) +x_41 = lean_array_get_size(x_40); +x_42 = lean_unsigned_to_nat(0u); +x_43 = lean_nat_dec_lt(x_42, x_41); +if (x_43 == 0) { -lean_object* x_46; lean_object* x_47; -lean_dec(x_43); -lean_dec(x_42); +lean_object* x_44; lean_object* x_45; +lean_dec(x_41); +lean_dec(x_40); lean_dec(x_4); lean_dec(x_2); -x_46 = lean_box(0); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_39); -lean_ctor_set(x_14, 0, x_47); +x_44 = lean_box(0); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_37); +lean_ctor_set(x_13, 0, x_45); return x_13; } else { -uint8_t x_48; -x_48 = lean_nat_dec_le(x_43, x_43); -if (x_48 == 0) +uint8_t x_46; +x_46 = lean_nat_dec_le(x_41, x_41); +if (x_46 == 0) { -lean_object* x_49; lean_object* x_50; -lean_dec(x_43); -lean_dec(x_42); +lean_object* x_47; lean_object* x_48; +lean_dec(x_41); +lean_dec(x_40); lean_dec(x_4); lean_dec(x_2); -x_49 = lean_box(0); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_39); -lean_ctor_set(x_14, 0, x_50); +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_37); +lean_ctor_set(x_13, 0, x_48); return x_13; } else { -size_t x_51; size_t x_52; lean_object* x_53; lean_object* x_54; +size_t x_49; size_t x_50; lean_object* x_51; lean_object* x_52; lean_free_object(x_13); -lean_free_object(x_14); -x_51 = 0; -x_52 = lean_usize_of_nat(x_43); -lean_dec(x_43); -x_53 = lean_box(0); -x_54 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_42, x_51, x_52, x_53, x_2, x_39, x_4, x_18); -lean_dec(x_42); -return x_54; +x_49 = 0; +x_50 = lean_usize_of_nat(x_41); +lean_dec(x_41); +x_51 = lean_box(0); +x_52 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_40, x_49, x_50, x_51, x_2, x_37, x_4, x_36); +lean_dec(x_40); +return x_52; } } } else { -lean_object* x_55; lean_object* x_56; +lean_object* x_53; lean_object* x_54; lean_free_object(x_13); -lean_free_object(x_14); -x_55 = lean_unsigned_to_nat(0u); -x_56 = l_Lean_Syntax_getArg(x_1, x_55); +x_53 = lean_unsigned_to_nat(0u); +x_54 = l_Lean_Syntax_getArg(x_1, x_53); lean_dec(x_1); -x_1 = x_56; -x_3 = x_39; -x_5 = x_18; +x_1 = x_54; +x_3 = x_37; +x_5 = x_36; goto _start; } } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; -x_58 = lean_ctor_get(x_14, 0); -x_59 = lean_ctor_get(x_13, 1); -lean_inc(x_59); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_56 = lean_ctor_get(x_13, 0); +x_57 = lean_ctor_get(x_13, 1); +lean_inc(x_57); +lean_inc(x_56); lean_dec(x_13); -x_60 = lean_ctor_get(x_58, 1); -lean_inc(x_60); -if (lean_is_exclusive(x_58)) { - lean_ctor_release(x_58, 0); - lean_ctor_release(x_58, 1); - x_61 = x_58; +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_59 = x_56; } else { - lean_dec_ref(x_58); - x_61 = lean_box(0); + lean_dec_ref(x_56); + x_59 = lean_box(0); } -x_62 = l_Lean_choiceKind; +x_60 = l_Lean_choiceKind; lean_inc(x_1); -x_63 = l_Lean_Syntax_isOfKind(x_1, x_62); -if (x_63 == 0) +x_61 = l_Lean_Syntax_isOfKind(x_1, x_60); +if (x_61 == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_64 = l_Lean_Syntax_getArgs(x_1); +lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_62 = l_Lean_Syntax_getArgs(x_1); lean_dec(x_1); -x_65 = lean_array_get_size(x_64); -x_66 = lean_unsigned_to_nat(0u); -x_67 = lean_nat_dec_lt(x_66, x_65); -if (x_67 == 0) +x_63 = lean_array_get_size(x_62); +x_64 = lean_unsigned_to_nat(0u); +x_65 = lean_nat_dec_lt(x_64, x_63); +if (x_65 == 0) { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_65); -lean_dec(x_64); +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_63); +lean_dec(x_62); lean_dec(x_4); lean_dec(x_2); -x_68 = lean_box(0); -if (lean_is_scalar(x_61)) { - x_69 = lean_alloc_ctor(0, 2, 0); +x_66 = lean_box(0); +if (lean_is_scalar(x_59)) { + x_67 = lean_alloc_ctor(0, 2, 0); } else { - x_69 = x_61; + x_67 = x_59; } -lean_ctor_set(x_69, 0, x_68); -lean_ctor_set(x_69, 1, x_60); -lean_ctor_set(x_14, 0, x_69); -x_70 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_70, 0, x_14); -lean_ctor_set(x_70, 1, x_59); -return x_70; +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_58); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_57); +return x_68; } else { -uint8_t x_71; -x_71 = lean_nat_dec_le(x_65, x_65); -if (x_71 == 0) +uint8_t x_69; +x_69 = lean_nat_dec_le(x_63, x_63); +if (x_69 == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; -lean_dec(x_65); -lean_dec(x_64); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_63); +lean_dec(x_62); lean_dec(x_4); lean_dec(x_2); -x_72 = lean_box(0); -if (lean_is_scalar(x_61)) { - x_73 = lean_alloc_ctor(0, 2, 0); +x_70 = lean_box(0); +if (lean_is_scalar(x_59)) { + x_71 = lean_alloc_ctor(0, 2, 0); } else { - x_73 = x_61; + x_71 = x_59; } -lean_ctor_set(x_73, 0, x_72); -lean_ctor_set(x_73, 1, x_60); -lean_ctor_set(x_14, 0, x_73); -x_74 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_74, 0, x_14); -lean_ctor_set(x_74, 1, x_59); -return x_74; +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_58); +x_72 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_57); +return x_72; } else { -size_t x_75; size_t x_76; lean_object* x_77; lean_object* x_78; -lean_dec(x_61); -lean_free_object(x_14); -x_75 = 0; -x_76 = lean_usize_of_nat(x_65); -lean_dec(x_65); -x_77 = lean_box(0); -x_78 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_64, x_75, x_76, x_77, x_2, x_60, x_4, x_59); -lean_dec(x_64); -return x_78; +size_t x_73; size_t x_74; lean_object* x_75; lean_object* x_76; +lean_dec(x_59); +x_73 = 0; +x_74 = lean_usize_of_nat(x_63); +lean_dec(x_63); +x_75 = lean_box(0); +x_76 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_62, x_73, x_74, x_75, x_2, x_58, x_4, x_57); +lean_dec(x_62); +return x_76; } } } else { -lean_object* x_79; lean_object* x_80; -lean_dec(x_61); -lean_free_object(x_14); -x_79 = lean_unsigned_to_nat(0u); -x_80 = l_Lean_Syntax_getArg(x_1, x_79); +lean_object* x_77; lean_object* x_78; +lean_dec(x_59); +x_77 = lean_unsigned_to_nat(0u); +x_78 = l_Lean_Syntax_getArg(x_1, x_77); lean_dec(x_1); -x_1 = x_80; -x_3 = x_60; -x_5 = x_59; +x_1 = x_78; +x_3 = x_58; +x_5 = x_57; goto _start; } } } else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; uint8_t x_88; -x_82 = lean_ctor_get(x_14, 0); -lean_inc(x_82); -lean_dec(x_14); -x_83 = lean_ctor_get(x_13, 1); -lean_inc(x_83); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - lean_ctor_release(x_13, 1); - x_84 = x_13; -} else { - lean_dec_ref(x_13); - x_84 = lean_box(0); -} -x_85 = lean_ctor_get(x_82, 1); -lean_inc(x_85); -if (lean_is_exclusive(x_82)) { - lean_ctor_release(x_82, 0); - lean_ctor_release(x_82, 1); - x_86 = x_82; -} else { - lean_dec_ref(x_82); - x_86 = lean_box(0); -} -x_87 = l_Lean_choiceKind; -lean_inc(x_1); -x_88 = l_Lean_Syntax_isOfKind(x_1, x_87); -if (x_88 == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; uint8_t x_92; -x_89 = l_Lean_Syntax_getArgs(x_1); +lean_object* x_80; lean_object* x_81; lean_object* x_82; +lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_90 = lean_array_get_size(x_89); -x_91 = lean_unsigned_to_nat(0u); -x_92 = lean_nat_dec_lt(x_91, x_90); +x_80 = lean_box(0); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_3); +x_82 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_82, 0, x_81); +lean_ctor_set(x_82, 1, x_5); +return x_82; +} +} +else +{ +lean_object* x_83; +x_83 = l_Lean_Server_FileWorker_handleSemanticTokens_highlightId(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_4); +return x_83; +} +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; uint8_t x_89; +x_84 = lean_unsigned_to_nat(0u); +x_85 = l_Lean_Syntax_getArg(x_1, x_84); +x_86 = lean_unsigned_to_nat(2u); +x_87 = l_Lean_Syntax_getArg(x_1, x_86); +x_88 = l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__5; +lean_inc(x_87); +x_89 = l_Lean_Syntax_isOfKind(x_87, x_88); +if (x_89 == 0) +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +lean_dec(x_87); +lean_dec(x_85); +lean_inc(x_1); +x_90 = l_Lean_Syntax_getKind(x_1); +x_91 = l_Lean_Server_FileWorker_noHighlightKinds; +x_92 = l_Array_contains___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__1(x_91, x_90); +lean_dec(x_90); if (x_92 == 0) { -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_90); -lean_dec(x_89); -lean_dec(x_4); -lean_dec(x_2); -x_93 = lean_box(0); -if (lean_is_scalar(x_86)) { - x_94 = lean_alloc_ctor(0, 2, 0); -} else { - x_94 = x_86; -} -lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_85); -x_95 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_95, 0, x_94); -if (lean_is_scalar(x_84)) { - x_96 = lean_alloc_ctor(0, 2, 0); -} else { - x_96 = x_84; -} -lean_ctor_set(x_96, 0, x_95); -lean_ctor_set(x_96, 1, x_83); -return x_96; -} -else +lean_object* x_93; uint8_t x_94; +lean_inc(x_1); +x_93 = l_Lean_Server_FileWorker_handleSemanticTokens_highlightKeyword(x_1, x_2, x_3, x_4, x_5); +x_94 = !lean_is_exclusive(x_93); +if (x_94 == 0) { -uint8_t x_97; -x_97 = lean_nat_dec_le(x_90, x_90); -if (x_97 == 0) +lean_object* x_95; uint8_t x_96; +x_95 = lean_ctor_get(x_93, 0); +x_96 = !lean_is_exclusive(x_95); +if (x_96 == 0) { -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_90); -lean_dec(x_89); -lean_dec(x_4); -lean_dec(x_2); -x_98 = lean_box(0); -if (lean_is_scalar(x_86)) { - x_99 = lean_alloc_ctor(0, 2, 0); -} else { - x_99 = x_86; -} -lean_ctor_set(x_99, 0, x_98); -lean_ctor_set(x_99, 1, x_85); -x_100 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_100, 0, x_99); -if (lean_is_scalar(x_84)) { - x_101 = lean_alloc_ctor(0, 2, 0); -} else { - x_101 = x_84; -} -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_83); -return x_101; -} -else +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_97 = lean_ctor_get(x_93, 1); +x_98 = lean_ctor_get(x_95, 1); +x_99 = lean_ctor_get(x_95, 0); +lean_dec(x_99); +x_100 = l_Lean_choiceKind; +lean_inc(x_1); +x_101 = l_Lean_Syntax_isOfKind(x_1, x_100); +if (x_101 == 0) { -size_t x_102; size_t x_103; lean_object* x_104; lean_object* x_105; -lean_dec(x_86); -lean_dec(x_84); -x_102 = 0; -x_103 = lean_usize_of_nat(x_90); -lean_dec(x_90); -x_104 = lean_box(0); -x_105 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_89, x_102, x_103, x_104, x_2, x_85, x_4, x_83); -lean_dec(x_89); -return x_105; -} -} -} -else -{ -lean_object* x_106; lean_object* x_107; -lean_dec(x_86); -lean_dec(x_84); -x_106 = lean_unsigned_to_nat(0u); -x_107 = l_Lean_Syntax_getArg(x_1, x_106); +lean_object* x_102; lean_object* x_103; uint8_t x_104; +x_102 = l_Lean_Syntax_getArgs(x_1); lean_dec(x_1); -x_1 = x_107; -x_3 = x_85; -x_5 = x_83; +x_103 = lean_array_get_size(x_102); +x_104 = lean_nat_dec_lt(x_84, x_103); +if (x_104 == 0) +{ +lean_object* x_105; +lean_dec(x_103); +lean_dec(x_102); +lean_dec(x_4); +lean_dec(x_2); +x_105 = lean_box(0); +lean_ctor_set(x_95, 0, x_105); +return x_93; +} +else +{ +uint8_t x_106; +x_106 = lean_nat_dec_le(x_103, x_103); +if (x_106 == 0) +{ +lean_object* x_107; +lean_dec(x_103); +lean_dec(x_102); +lean_dec(x_4); +lean_dec(x_2); +x_107 = lean_box(0); +lean_ctor_set(x_95, 0, x_107); +return x_93; +} +else +{ +size_t x_108; size_t x_109; lean_object* x_110; lean_object* x_111; +lean_free_object(x_95); +lean_free_object(x_93); +x_108 = 0; +x_109 = lean_usize_of_nat(x_103); +lean_dec(x_103); +x_110 = lean_box(0); +x_111 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_102, x_108, x_109, x_110, x_2, x_98, x_4, x_97); +lean_dec(x_102); +return x_111; +} +} +} +else +{ +lean_object* x_112; +lean_free_object(x_95); +lean_free_object(x_93); +x_112 = l_Lean_Syntax_getArg(x_1, x_84); +lean_dec(x_1); +x_1 = x_112; +x_3 = x_98; +x_5 = x_97; +goto _start; +} +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; uint8_t x_117; +x_114 = lean_ctor_get(x_93, 1); +x_115 = lean_ctor_get(x_95, 1); +lean_inc(x_115); +lean_dec(x_95); +x_116 = l_Lean_choiceKind; +lean_inc(x_1); +x_117 = l_Lean_Syntax_isOfKind(x_1, x_116); +if (x_117 == 0) +{ +lean_object* x_118; lean_object* x_119; uint8_t x_120; +x_118 = l_Lean_Syntax_getArgs(x_1); +lean_dec(x_1); +x_119 = lean_array_get_size(x_118); +x_120 = lean_nat_dec_lt(x_84, x_119); +if (x_120 == 0) +{ +lean_object* x_121; lean_object* x_122; +lean_dec(x_119); +lean_dec(x_118); +lean_dec(x_4); +lean_dec(x_2); +x_121 = lean_box(0); +x_122 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_122, 0, x_121); +lean_ctor_set(x_122, 1, x_115); +lean_ctor_set(x_93, 0, x_122); +return x_93; +} +else +{ +uint8_t x_123; +x_123 = lean_nat_dec_le(x_119, x_119); +if (x_123 == 0) +{ +lean_object* x_124; lean_object* x_125; +lean_dec(x_119); +lean_dec(x_118); +lean_dec(x_4); +lean_dec(x_2); +x_124 = lean_box(0); +x_125 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_125, 0, x_124); +lean_ctor_set(x_125, 1, x_115); +lean_ctor_set(x_93, 0, x_125); +return x_93; +} +else +{ +size_t x_126; size_t x_127; lean_object* x_128; lean_object* x_129; +lean_free_object(x_93); +x_126 = 0; +x_127 = lean_usize_of_nat(x_119); +lean_dec(x_119); +x_128 = lean_box(0); +x_129 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_118, x_126, x_127, x_128, x_2, x_115, x_4, x_114); +lean_dec(x_118); +return x_129; +} +} +} +else +{ +lean_object* x_130; +lean_free_object(x_93); +x_130 = l_Lean_Syntax_getArg(x_1, x_84); +lean_dec(x_1); +x_1 = x_130; +x_3 = x_115; +x_5 = x_114; goto _start; } } } else { -lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_109 = lean_box(0); -x_110 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_110, 0, x_109); -lean_ctor_set(x_110, 1, x_3); -x_111 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_111, 0, x_110); -x_112 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_112, 0, x_111); -lean_ctor_set(x_112, 1, x_5); -return x_112; +lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; +x_132 = lean_ctor_get(x_93, 0); +x_133 = lean_ctor_get(x_93, 1); +lean_inc(x_133); +lean_inc(x_132); +lean_dec(x_93); +x_134 = lean_ctor_get(x_132, 1); +lean_inc(x_134); +if (lean_is_exclusive(x_132)) { + lean_ctor_release(x_132, 0); + lean_ctor_release(x_132, 1); + x_135 = x_132; +} else { + lean_dec_ref(x_132); + x_135 = lean_box(0); } -} -else -{ -lean_object* x_113; -x_113 = l_Lean_Server_FileWorker_handleSemanticTokens_highlightId(x_1, x_2, x_3, x_4, x_5); -lean_dec(x_4); -return x_113; -} -} -else -{ -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; uint8_t x_119; -x_114 = lean_unsigned_to_nat(0u); -x_115 = l_Lean_Syntax_getArg(x_1, x_114); -x_116 = lean_unsigned_to_nat(2u); -x_117 = l_Lean_Syntax_getArg(x_1, x_116); -x_118 = l_Lean_Server_FileWorker_handleDocumentSymbol_toDocumentSymbols___lambda__3___closed__5; -lean_inc(x_117); -x_119 = l_Lean_Syntax_isOfKind(x_117, x_118); -if (x_119 == 0) -{ -lean_object* x_120; lean_object* x_121; uint8_t x_122; -lean_dec(x_117); -lean_dec(x_115); +x_136 = l_Lean_choiceKind; lean_inc(x_1); -x_120 = l_Lean_Syntax_getKind(x_1); -x_121 = l_Lean_Server_FileWorker_noHighlightKinds; -x_122 = l_Array_contains___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__1(x_121, x_120); -lean_dec(x_120); -if (x_122 == 0) -{ -lean_object* x_123; lean_object* x_124; uint8_t x_125; -lean_inc(x_1); -x_123 = l_Lean_Server_FileWorker_handleSemanticTokens_highlightKeyword(x_1, x_2, x_3, x_4, x_5); -x_124 = lean_ctor_get(x_123, 0); -lean_inc(x_124); -x_125 = !lean_is_exclusive(x_124); -if (x_125 == 0) -{ -uint8_t x_126; -x_126 = !lean_is_exclusive(x_123); -if (x_126 == 0) -{ -lean_object* x_127; lean_object* x_128; lean_object* x_129; uint8_t x_130; -x_127 = lean_ctor_get(x_124, 0); -x_128 = lean_ctor_get(x_123, 1); -x_129 = lean_ctor_get(x_123, 0); -lean_dec(x_129); -x_130 = !lean_is_exclusive(x_127); -if (x_130 == 0) -{ -lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; -x_131 = lean_ctor_get(x_127, 1); -x_132 = lean_ctor_get(x_127, 0); -lean_dec(x_132); -x_133 = l_Lean_choiceKind; -lean_inc(x_1); -x_134 = l_Lean_Syntax_isOfKind(x_1, x_133); -if (x_134 == 0) -{ -lean_object* x_135; lean_object* x_136; uint8_t x_137; -x_135 = l_Lean_Syntax_getArgs(x_1); -lean_dec(x_1); -x_136 = lean_array_get_size(x_135); -x_137 = lean_nat_dec_lt(x_114, x_136); +x_137 = l_Lean_Syntax_isOfKind(x_1, x_136); if (x_137 == 0) { -lean_object* x_138; -lean_dec(x_136); +lean_object* x_138; lean_object* x_139; uint8_t x_140; +x_138 = l_Lean_Syntax_getArgs(x_1); +lean_dec(x_1); +x_139 = lean_array_get_size(x_138); +x_140 = lean_nat_dec_lt(x_84, x_139); +if (x_140 == 0) +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; +lean_dec(x_139); +lean_dec(x_138); +lean_dec(x_4); +lean_dec(x_2); +x_141 = lean_box(0); +if (lean_is_scalar(x_135)) { + x_142 = lean_alloc_ctor(0, 2, 0); +} else { + x_142 = x_135; +} +lean_ctor_set(x_142, 0, x_141); +lean_ctor_set(x_142, 1, x_134); +x_143 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_143, 0, x_142); +lean_ctor_set(x_143, 1, x_133); +return x_143; +} +else +{ +uint8_t x_144; +x_144 = lean_nat_dec_le(x_139, x_139); +if (x_144 == 0) +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_dec(x_139); +lean_dec(x_138); +lean_dec(x_4); +lean_dec(x_2); +x_145 = lean_box(0); +if (lean_is_scalar(x_135)) { + x_146 = lean_alloc_ctor(0, 2, 0); +} else { + x_146 = x_135; +} +lean_ctor_set(x_146, 0, x_145); +lean_ctor_set(x_146, 1, x_134); +x_147 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_147, 0, x_146); +lean_ctor_set(x_147, 1, x_133); +return x_147; +} +else +{ +size_t x_148; size_t x_149; lean_object* x_150; lean_object* x_151; lean_dec(x_135); -lean_dec(x_4); -lean_dec(x_2); -x_138 = lean_box(0); -lean_ctor_set(x_127, 0, x_138); -return x_123; +x_148 = 0; +x_149 = lean_usize_of_nat(x_139); +lean_dec(x_139); +x_150 = lean_box(0); +x_151 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_138, x_148, x_149, x_150, x_2, x_134, x_4, x_133); +lean_dec(x_138); +return x_151; +} +} } else { -uint8_t x_139; -x_139 = lean_nat_dec_le(x_136, x_136); -if (x_139 == 0) -{ -lean_object* x_140; -lean_dec(x_136); +lean_object* x_152; lean_dec(x_135); -lean_dec(x_4); -lean_dec(x_2); -x_140 = lean_box(0); -lean_ctor_set(x_127, 0, x_140); -return x_123; -} -else -{ -size_t x_141; size_t x_142; lean_object* x_143; lean_object* x_144; -lean_free_object(x_127); -lean_free_object(x_123); -lean_free_object(x_124); -x_141 = 0; -x_142 = lean_usize_of_nat(x_136); -lean_dec(x_136); -x_143 = lean_box(0); -x_144 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_135, x_141, x_142, x_143, x_2, x_131, x_4, x_128); -lean_dec(x_135); -return x_144; -} -} -} -else -{ -lean_object* x_145; -lean_free_object(x_127); -lean_free_object(x_123); -lean_free_object(x_124); -x_145 = l_Lean_Syntax_getArg(x_1, x_114); +x_152 = l_Lean_Syntax_getArg(x_1, x_84); lean_dec(x_1); -x_1 = x_145; -x_3 = x_131; -x_5 = x_128; -goto _start; -} -} -else -{ -lean_object* x_147; lean_object* x_148; uint8_t x_149; -x_147 = lean_ctor_get(x_127, 1); -lean_inc(x_147); -lean_dec(x_127); -x_148 = l_Lean_choiceKind; -lean_inc(x_1); -x_149 = l_Lean_Syntax_isOfKind(x_1, x_148); -if (x_149 == 0) -{ -lean_object* x_150; lean_object* x_151; uint8_t x_152; -x_150 = l_Lean_Syntax_getArgs(x_1); -lean_dec(x_1); -x_151 = lean_array_get_size(x_150); -x_152 = lean_nat_dec_lt(x_114, x_151); -if (x_152 == 0) -{ -lean_object* x_153; lean_object* x_154; -lean_dec(x_151); -lean_dec(x_150); -lean_dec(x_4); -lean_dec(x_2); -x_153 = lean_box(0); -x_154 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_154, 0, x_153); -lean_ctor_set(x_154, 1, x_147); -lean_ctor_set(x_124, 0, x_154); -return x_123; -} -else -{ -uint8_t x_155; -x_155 = lean_nat_dec_le(x_151, x_151); -if (x_155 == 0) -{ -lean_object* x_156; lean_object* x_157; -lean_dec(x_151); -lean_dec(x_150); -lean_dec(x_4); -lean_dec(x_2); -x_156 = lean_box(0); -x_157 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_157, 0, x_156); -lean_ctor_set(x_157, 1, x_147); -lean_ctor_set(x_124, 0, x_157); -return x_123; -} -else -{ -size_t x_158; size_t x_159; lean_object* x_160; lean_object* x_161; -lean_free_object(x_123); -lean_free_object(x_124); -x_158 = 0; -x_159 = lean_usize_of_nat(x_151); -lean_dec(x_151); -x_160 = lean_box(0); -x_161 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_150, x_158, x_159, x_160, x_2, x_147, x_4, x_128); -lean_dec(x_150); -return x_161; -} -} -} -else -{ -lean_object* x_162; -lean_free_object(x_123); -lean_free_object(x_124); -x_162 = l_Lean_Syntax_getArg(x_1, x_114); -lean_dec(x_1); -x_1 = x_162; -x_3 = x_147; -x_5 = x_128; +x_1 = x_152; +x_3 = x_134; +x_5 = x_133; goto _start; } } } else { -lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; uint8_t x_169; -x_164 = lean_ctor_get(x_124, 0); -x_165 = lean_ctor_get(x_123, 1); -lean_inc(x_165); -lean_dec(x_123); -x_166 = lean_ctor_get(x_164, 1); -lean_inc(x_166); -if (lean_is_exclusive(x_164)) { - lean_ctor_release(x_164, 0); - lean_ctor_release(x_164, 1); - x_167 = x_164; -} else { - lean_dec_ref(x_164); - x_167 = lean_box(0); -} -x_168 = l_Lean_choiceKind; -lean_inc(x_1); -x_169 = l_Lean_Syntax_isOfKind(x_1, x_168); -if (x_169 == 0) -{ -lean_object* x_170; lean_object* x_171; uint8_t x_172; -x_170 = l_Lean_Syntax_getArgs(x_1); -lean_dec(x_1); -x_171 = lean_array_get_size(x_170); -x_172 = lean_nat_dec_lt(x_114, x_171); -if (x_172 == 0) -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; -lean_dec(x_171); -lean_dec(x_170); -lean_dec(x_4); -lean_dec(x_2); -x_173 = lean_box(0); -if (lean_is_scalar(x_167)) { - x_174 = lean_alloc_ctor(0, 2, 0); -} else { - x_174 = x_167; -} -lean_ctor_set(x_174, 0, x_173); -lean_ctor_set(x_174, 1, x_166); -lean_ctor_set(x_124, 0, x_174); -x_175 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_175, 0, x_124); -lean_ctor_set(x_175, 1, x_165); -return x_175; -} -else -{ -uint8_t x_176; -x_176 = lean_nat_dec_le(x_171, x_171); -if (x_176 == 0) -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; -lean_dec(x_171); -lean_dec(x_170); -lean_dec(x_4); -lean_dec(x_2); -x_177 = lean_box(0); -if (lean_is_scalar(x_167)) { - x_178 = lean_alloc_ctor(0, 2, 0); -} else { - x_178 = x_167; -} -lean_ctor_set(x_178, 0, x_177); -lean_ctor_set(x_178, 1, x_166); -lean_ctor_set(x_124, 0, x_178); -x_179 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_179, 0, x_124); -lean_ctor_set(x_179, 1, x_165); -return x_179; -} -else -{ -size_t x_180; size_t x_181; lean_object* x_182; lean_object* x_183; -lean_dec(x_167); -lean_free_object(x_124); -x_180 = 0; -x_181 = lean_usize_of_nat(x_171); -lean_dec(x_171); -x_182 = lean_box(0); -x_183 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_170, x_180, x_181, x_182, x_2, x_166, x_4, x_165); -lean_dec(x_170); -return x_183; -} -} -} -else -{ -lean_object* x_184; -lean_dec(x_167); -lean_free_object(x_124); -x_184 = l_Lean_Syntax_getArg(x_1, x_114); -lean_dec(x_1); -x_1 = x_184; -x_3 = x_166; -x_5 = x_165; -goto _start; -} -} -} -else -{ -lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; uint8_t x_192; -x_186 = lean_ctor_get(x_124, 0); -lean_inc(x_186); -lean_dec(x_124); -x_187 = lean_ctor_get(x_123, 1); -lean_inc(x_187); -if (lean_is_exclusive(x_123)) { - lean_ctor_release(x_123, 0); - lean_ctor_release(x_123, 1); - x_188 = x_123; -} else { - lean_dec_ref(x_123); - x_188 = lean_box(0); -} -x_189 = lean_ctor_get(x_186, 1); -lean_inc(x_189); -if (lean_is_exclusive(x_186)) { - lean_ctor_release(x_186, 0); - lean_ctor_release(x_186, 1); - x_190 = x_186; -} else { - lean_dec_ref(x_186); - x_190 = lean_box(0); -} -x_191 = l_Lean_choiceKind; -lean_inc(x_1); -x_192 = l_Lean_Syntax_isOfKind(x_1, x_191); -if (x_192 == 0) -{ -lean_object* x_193; lean_object* x_194; uint8_t x_195; -x_193 = l_Lean_Syntax_getArgs(x_1); -lean_dec(x_1); -x_194 = lean_array_get_size(x_193); -x_195 = lean_nat_dec_lt(x_114, x_194); -if (x_195 == 0) -{ -lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; -lean_dec(x_194); -lean_dec(x_193); -lean_dec(x_4); -lean_dec(x_2); -x_196 = lean_box(0); -if (lean_is_scalar(x_190)) { - x_197 = lean_alloc_ctor(0, 2, 0); -} else { - x_197 = x_190; -} -lean_ctor_set(x_197, 0, x_196); -lean_ctor_set(x_197, 1, x_189); -x_198 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_198, 0, x_197); -if (lean_is_scalar(x_188)) { - x_199 = lean_alloc_ctor(0, 2, 0); -} else { - x_199 = x_188; -} -lean_ctor_set(x_199, 0, x_198); -lean_ctor_set(x_199, 1, x_187); -return x_199; -} -else -{ -uint8_t x_200; -x_200 = lean_nat_dec_le(x_194, x_194); -if (x_200 == 0) -{ -lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; -lean_dec(x_194); -lean_dec(x_193); -lean_dec(x_4); -lean_dec(x_2); -x_201 = lean_box(0); -if (lean_is_scalar(x_190)) { - x_202 = lean_alloc_ctor(0, 2, 0); -} else { - x_202 = x_190; -} -lean_ctor_set(x_202, 0, x_201); -lean_ctor_set(x_202, 1, x_189); -x_203 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_203, 0, x_202); -if (lean_is_scalar(x_188)) { - x_204 = lean_alloc_ctor(0, 2, 0); -} else { - x_204 = x_188; -} -lean_ctor_set(x_204, 0, x_203); -lean_ctor_set(x_204, 1, x_187); -return x_204; -} -else -{ -size_t x_205; size_t x_206; lean_object* x_207; lean_object* x_208; -lean_dec(x_190); -lean_dec(x_188); -x_205 = 0; -x_206 = lean_usize_of_nat(x_194); -lean_dec(x_194); -x_207 = lean_box(0); -x_208 = l_Array_foldlMUnsafe_fold___at_Lean_Server_FileWorker_handleSemanticTokens_go___spec__3(x_193, x_205, x_206, x_207, x_2, x_189, x_4, x_187); -lean_dec(x_193); -return x_208; -} -} -} -else -{ -lean_object* x_209; -lean_dec(x_190); -lean_dec(x_188); -x_209 = l_Lean_Syntax_getArg(x_1, x_114); -lean_dec(x_1); -x_1 = x_209; -x_3 = x_189; -x_5 = x_187; -goto _start; -} -} -} -else -{ -lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_211 = lean_box(0); -x_212 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_212, 0, x_211); -lean_ctor_set(x_212, 1, x_3); -x_213 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_213, 0, x_212); -x_214 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_214, 0, x_213); -lean_ctor_set(x_214, 1, x_5); -return x_214; +x_154 = lean_box(0); +x_155 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_155, 0, x_154); +lean_ctor_set(x_155, 1, x_3); +x_156 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_156, 0, x_155); +lean_ctor_set(x_156, 1, x_5); +return x_156; } } else { -lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; uint8_t x_220; lean_object* x_221; +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; lean_object* x_162; lean_dec(x_1); lean_inc(x_4); lean_inc(x_2); -x_215 = l_Lean_Server_FileWorker_handleSemanticTokens_go(x_115, x_2, x_3, x_4, x_5); -x_216 = lean_ctor_get(x_215, 0); -lean_inc(x_216); -x_217 = lean_ctor_get(x_216, 0); -lean_inc(x_217); -lean_dec(x_216); -x_218 = lean_ctor_get(x_215, 1); -lean_inc(x_218); -lean_dec(x_215); -x_219 = lean_ctor_get(x_217, 1); -lean_inc(x_219); -lean_dec(x_217); -x_220 = 2; -x_221 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_117, x_220, x_2, x_219, x_4, x_218); +x_157 = l_Lean_Server_FileWorker_handleSemanticTokens_go(x_85, x_2, x_3, x_4, x_5); +x_158 = lean_ctor_get(x_157, 0); +lean_inc(x_158); +x_159 = lean_ctor_get(x_157, 1); +lean_inc(x_159); +lean_dec(x_157); +x_160 = lean_ctor_get(x_158, 1); +lean_inc(x_160); +lean_dec(x_158); +x_161 = 2; +x_162 = l_Lean_Server_FileWorker_handleSemanticTokens_addToken(x_87, x_161, x_2, x_160, x_4, x_159); lean_dec(x_4); lean_dec(x_2); -return x_221; +return x_162; } } } @@ -14364,11 +14005,14 @@ return x_17; } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; +lean_object* x_18; lean_object* x_19; x_18 = lean_ctor_get(x_2, 0); lean_inc(x_18); lean_dec(x_2); x_19 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_1, x_18, x_3); +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_20; x_20 = !lean_is_exclusive(x_19); if (x_20 == 0) { @@ -14397,6 +14041,29 @@ lean_ctor_set(x_30, 1, x_26); return x_30; } } +else +{ +uint8_t x_31; +x_31 = !lean_is_exclusive(x_19); +if (x_31 == 0) +{ +return x_19; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_19, 0); +x_33 = lean_ctor_get(x_19, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_19); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} } } LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__4(lean_object* x_1) { @@ -14493,8 +14160,11 @@ return x_13; } else { -lean_object* x_14; uint8_t x_15; +lean_object* x_14; x_14 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_1, x_5, x_3); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; x_15 = !lean_is_exclusive(x_14); if (x_15 == 0) { @@ -14525,60 +14195,120 @@ lean_ctor_set(x_25, 1, x_21); return x_25; } } -} -case 1: +else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_26 = lean_ctor_get(x_2, 0); -lean_inc(x_26); -lean_dec(x_2); -x_27 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__3), 3, 1); -lean_closure_set(x_27, 0, x_1); -x_28 = l_Task_Priority_default; -x_29 = lean_io_bind_task(x_26, x_27, x_28, x_3); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +uint8_t x_26; +lean_dec(x_4); +x_26 = !lean_is_exclusive(x_14); +if (x_26 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 0); -x_32 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__1; -x_33 = lean_task_map(x_32, x_31, x_28); -lean_ctor_set(x_29, 0, x_33); -return x_29; +return x_14; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_29, 0); -x_35 = lean_ctor_get(x_29, 1); -lean_inc(x_35); -lean_inc(x_34); -lean_dec(x_29); +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_14, 0); +x_28 = lean_ctor_get(x_14, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_14); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +case 1: +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_2, 0); +lean_inc(x_30); +lean_dec(x_2); +x_31 = lean_alloc_closure((void*)(l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__3), 3, 1); +lean_closure_set(x_31, 0, x_1); +x_32 = l_Task_Priority_default; +x_33 = lean_io_bind_task(x_30, x_31, x_32, x_3); +if (lean_obj_tag(x_33) == 0) +{ +uint8_t x_34; +x_34 = !lean_is_exclusive(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_33, 0); x_36 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__1; -x_37 = lean_task_map(x_36, x_34, x_28); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_35); -return x_38; +x_37 = lean_task_map(x_36, x_35, x_32); +lean_ctor_set(x_33, 0, x_37); +return x_33; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_38 = lean_ctor_get(x_33, 0); +x_39 = lean_ctor_get(x_33, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_33); +x_40 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__1; +x_41 = lean_task_map(x_40, x_38, x_32); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +return x_42; +} +} +else +{ +uint8_t x_43; +x_43 = !lean_is_exclusive(x_33); +if (x_43 == 0) +{ +return x_33; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_33, 0); +x_45 = lean_ctor_get(x_33, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_33); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} } } default: { -lean_object* x_39; lean_object* x_40; +lean_object* x_47; lean_object* x_48; lean_dec(x_1); -x_39 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3; -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_3); -return x_40; +x_47 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3; +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_3); +return x_48; } } } } +static lean_object* _init_l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); x_10 = lean_alloc_ctor(0, 4, 0); @@ -14587,119 +14317,65 @@ lean_ctor_set(x_10, 1, x_3); lean_ctor_set(x_10, 2, x_4); lean_ctor_set(x_10, 3, x_1); x_11 = l_Lean_Server_FileWorker_handleSemanticTokens_go(x_9, x_10, x_6, x_7, x_8); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = !lean_is_exclusive(x_12); -if (x_13 == 0) +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_11); +lean_object* x_13; uint8_t x_14; +x_13 = lean_ctor_get(x_11, 0); +x_14 = !lean_is_exclusive(x_13); if (x_14 == 0) { -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_12, 0); -x_16 = lean_ctor_get(x_11, 0); -lean_dec(x_16); -x_17 = !lean_is_exclusive(x_15); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_15, 0); -lean_dec(x_18); -x_19 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -lean_ctor_set(x_15, 0, x_19); -return x_11; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_15, 1); -lean_inc(x_20); +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_13, 0); lean_dec(x_15); -x_21 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_20); -lean_ctor_set(x_12, 0, x_22); +x_16 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1; +lean_ctor_set(x_13, 0, x_16); +return x_11; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +lean_dec(x_13); +x_18 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1; +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +lean_ctor_set(x_11, 0, x_19); return x_11; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_23 = lean_ctor_get(x_12, 0); -x_24 = lean_ctor_get(x_11, 1); -lean_inc(x_24); +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_20 = lean_ctor_get(x_11, 0); +x_21 = lean_ctor_get(x_11, 1); +lean_inc(x_21); +lean_inc(x_20); lean_dec(x_11); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -if (lean_is_exclusive(x_23)) { - lean_ctor_release(x_23, 0); - lean_ctor_release(x_23, 1); - x_26 = x_23; +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +if (lean_is_exclusive(x_20)) { + lean_ctor_release(x_20, 0); + lean_ctor_release(x_20, 1); + x_23 = x_20; } else { - lean_dec_ref(x_23); - x_26 = lean_box(0); + lean_dec_ref(x_20); + x_23 = lean_box(0); } -x_27 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -if (lean_is_scalar(x_26)) { - x_28 = lean_alloc_ctor(0, 2, 0); +x_24 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1; +if (lean_is_scalar(x_23)) { + x_25 = lean_alloc_ctor(0, 2, 0); } else { - x_28 = x_26; + x_25 = x_23; } -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_25); -lean_ctor_set(x_12, 0, x_28); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_12); -lean_ctor_set(x_29, 1, x_24); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_30 = lean_ctor_get(x_12, 0); -lean_inc(x_30); -lean_dec(x_12); -x_31 = lean_ctor_get(x_11, 1); -lean_inc(x_31); -if (lean_is_exclusive(x_11)) { - lean_ctor_release(x_11, 0); - lean_ctor_release(x_11, 1); - x_32 = x_11; -} else { - lean_dec_ref(x_11); - x_32 = lean_box(0); -} -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - lean_ctor_release(x_30, 1); - x_34 = x_30; -} else { - lean_dec_ref(x_30); - x_34 = lean_box(0); -} -x_35 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1; -if (lean_is_scalar(x_34)) { - x_36 = lean_alloc_ctor(0, 2, 0); -} else { - x_36 = x_34; -} -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_33); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_36); -if (lean_is_scalar(x_32)) { - x_38 = lean_alloc_ctor(0, 2, 0); -} else { - x_38 = x_32; -} -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_31); -return x_38; +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_22); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_21); +return x_26; } } } @@ -14708,7 +14384,7 @@ _start: { if (lean_obj_tag(x_4) == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; +lean_object* x_9; lean_object* x_10; lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); @@ -14716,63 +14392,58 @@ lean_dec(x_1); x_9 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_9, 0, x_5); lean_ctor_set(x_9, 1, x_6); -x_10 = lean_alloc_ctor(1, 1, 0); +x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_9); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_8); -return x_11; +lean_ctor_set(x_10, 1, x_8); +return x_10; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_dec(x_5); -x_12 = lean_ctor_get(x_4, 0); +x_11 = lean_ctor_get(x_4, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_4, 1); lean_inc(x_12); -x_13 = lean_ctor_get(x_4, 1); -lean_inc(x_13); lean_dec(x_4); -x_14 = l_Lean_Server_Snapshots_Snapshot_endPos(x_12); -x_15 = lean_nat_dec_le(x_14, x_1); -lean_dec(x_14); -if (x_15 == 0) +x_13 = l_Lean_Server_Snapshots_Snapshot_endPos(x_11); +x_14 = lean_nat_dec_le(x_13, x_1); +lean_dec(x_13); +if (x_14 == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_16 = lean_box(0); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_15 = lean_box(0); lean_inc(x_7); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_17 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1(x_12, x_1, x_2, x_3, x_16, x_6, x_7, x_8); +x_16 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1(x_11, x_1, x_2, x_3, x_15, x_6, x_7, x_8); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); x_18 = lean_ctor_get(x_17, 0); lean_inc(x_18); -x_19 = lean_ctor_get(x_18, 0); +x_19 = lean_ctor_get(x_16, 1); lean_inc(x_19); -lean_dec(x_18); -x_20 = lean_ctor_get(x_19, 0); +lean_dec(x_16); +x_20 = lean_ctor_get(x_17, 1); lean_inc(x_20); -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); lean_dec(x_17); -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_dec(x_19); -x_23 = lean_ctor_get(x_20, 0); -lean_inc(x_23); -lean_dec(x_20); -x_4 = x_13; -x_5 = x_23; -x_6 = x_22; -x_8 = x_21; +x_21 = lean_ctor_get(x_18, 0); +lean_inc(x_21); +lean_dec(x_18); +x_4 = x_12; +x_5 = x_21; +x_6 = x_20; +x_8 = x_19; goto _start; } else { -lean_object* x_25; -lean_dec(x_12); -x_25 = lean_box(0); -x_4 = x_13; -x_5 = x_25; +lean_object* x_23; +lean_dec(x_11); +x_23 = lean_box(0); +x_4 = x_12; +x_5 = x_23; goto _start; } } @@ -14813,7 +14484,7 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; x_7 = lean_ctor_get(x_4, 0); lean_inc(x_7); lean_dec(x_4); @@ -14822,81 +14493,41 @@ x_9 = l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__2; x_10 = l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2(x_1, x_2, x_3, x_7, x_8, x_9, x_5, x_6); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); -x_12 = !lean_is_exclusive(x_11); -if (x_12 == 0) +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +x_13 = !lean_is_exclusive(x_10); +if (x_13 == 0) { -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = lean_ctor_get(x_11, 0); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -lean_dec(x_13); -x_15 = !lean_is_exclusive(x_10); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_10, 0); -lean_dec(x_16); -x_17 = lean_ctor_get(x_14, 0); -lean_inc(x_17); +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_10, 0); lean_dec(x_14); -lean_ctor_set(x_11, 0, x_17); +x_15 = lean_ctor_get(x_12, 0); +lean_inc(x_15); +lean_dec(x_12); +lean_ctor_set(x_10, 0, x_15); return x_10; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_10, 1); -lean_inc(x_18); +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_10, 1); +lean_inc(x_16); lean_dec(x_10); -x_19 = lean_ctor_get(x_14, 0); -lean_inc(x_19); -lean_dec(x_14); -lean_ctor_set(x_11, 0, x_19); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_11); -lean_ctor_set(x_20, 1, x_18); -return x_20; -} -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_21 = lean_ctor_get(x_11, 0); -lean_inc(x_21); -lean_dec(x_11); -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = lean_ctor_get(x_10, 1); -lean_inc(x_23); -if (lean_is_exclusive(x_10)) { - lean_ctor_release(x_10, 0); - lean_ctor_release(x_10, 1); - x_24 = x_10; -} else { - lean_dec_ref(x_10); - x_24 = lean_box(0); -} -x_25 = lean_ctor_get(x_22, 0); -lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -if (lean_is_scalar(x_24)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_24; -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); -return x_27; +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +lean_dec(x_12); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +return x_18; } } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokens(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_5 = l_Lean_Server_RequestM_readDoc(x_3, x_4); x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); @@ -14905,30 +14536,27 @@ lean_inc(x_7); lean_dec(x_5); x_8 = lean_ctor_get(x_6, 0); lean_inc(x_8); -lean_dec(x_6); -x_9 = lean_ctor_get(x_8, 0); +x_9 = lean_ctor_get(x_8, 2); lean_inc(x_9); -x_10 = lean_ctor_get(x_9, 2); -lean_inc(x_10); -lean_dec(x_9); -lean_inc(x_2); -x_11 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokens___lambda__1___boxed), 2, 1); -lean_closure_set(x_11, 0, x_2); -x_12 = lean_ctor_get(x_8, 2); -lean_inc(x_12); lean_dec(x_8); -x_13 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_11, x_12, x_7); -x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_2); +x_10 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokens___lambda__1___boxed), 2, 1); +lean_closure_set(x_10, 0, x_2); +x_11 = lean_ctor_get(x_6, 2); +lean_inc(x_11); +lean_dec(x_6); +x_12 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_10, x_11, x_7); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_12, 1); lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -x_16 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2), 6, 3); -lean_closure_set(x_16, 0, x_1); -lean_closure_set(x_16, 1, x_2); -lean_closure_set(x_16, 2, x_10); -x_17 = l_Lean_Server_RequestM_mapTask___rarg(x_14, x_16, x_3, x_15); -return x_17; +lean_dec(x_12); +x_15 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2), 6, 3); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_2); +lean_closure_set(x_15, 2, x_9); +x_16 = l_Lean_Server_RequestM_mapTask___rarg(x_13, x_15, x_3, x_14); +return x_16; } } LEAN_EXPORT lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___lambda__4___boxed(lean_object* x_1) { @@ -15000,7 +14628,7 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleSemanticTokensRange(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -15010,25 +14638,22 @@ lean_dec(x_4); x_7 = lean_ctor_get(x_5, 0); lean_inc(x_7); lean_dec(x_5); -x_8 = lean_ctor_get(x_7, 0); +x_8 = lean_ctor_get(x_7, 2); lean_inc(x_8); lean_dec(x_7); -x_9 = lean_ctor_get(x_8, 2); +x_9 = lean_ctor_get(x_1, 1); lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_ctor_get(x_1, 1); -lean_inc(x_10); lean_dec(x_1); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_11); -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_dec(x_10); -x_14 = l_Lean_FileMap_lspPosToUtf8Pos(x_9, x_13); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); lean_dec(x_9); -x_15 = l_Lean_Server_FileWorker_handleSemanticTokens(x_12, x_14, x_2, x_6); -return x_15; +x_13 = l_Lean_FileMap_lspPosToUtf8Pos(x_8, x_12); +lean_dec(x_8); +x_14 = l_Lean_Server_FileWorker_handleSemanticTokens(x_11, x_13, x_2, x_6); +return x_14; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics_waitLoop(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -15039,212 +14664,142 @@ x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = !lean_is_exclusive(x_4); if (x_5 == 0) { -lean_object* x_6; uint8_t x_7; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; x_6 = lean_ctor_get(x_4, 0); -x_7 = !lean_is_exclusive(x_6); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_8 = lean_ctor_get(x_4, 1); +x_7 = lean_ctor_get(x_4, 1); +x_8 = lean_ctor_get(x_1, 1); x_9 = lean_ctor_get(x_6, 0); -x_10 = lean_ctor_get(x_1, 1); -x_11 = lean_ctor_get(x_9, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_11, 1); -lean_inc(x_12); -lean_dec(x_11); -x_13 = lean_nat_dec_le(x_10, x_12); -lean_dec(x_12); -if (x_13 == 0) -{ -uint32_t x_14; lean_object* x_15; -lean_free_object(x_6); +lean_inc(x_9); +x_10 = lean_ctor_get(x_9, 1); +lean_inc(x_10); lean_dec(x_9); +x_11 = lean_nat_dec_le(x_8, x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +uint32_t x_12; lean_object* x_13; lean_free_object(x_4); -x_14 = 50; -x_15 = l_IO_sleep(x_14, x_8); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; -x_16 = lean_ctor_get(x_15, 1); -lean_inc(x_16); -lean_dec(x_15); -x_3 = x_16; -goto _start; -} -else -{ -uint8_t x_18; -x_18 = !lean_is_exclusive(x_15); -if (x_18 == 0) -{ -return x_15; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_15, 0); -x_20 = lean_ctor_get(x_15, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_15); -x_21 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -} -else -{ -return x_4; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_22 = lean_ctor_get(x_4, 1); -x_23 = lean_ctor_get(x_6, 0); -lean_inc(x_23); lean_dec(x_6); -x_24 = lean_ctor_get(x_1, 1); -x_25 = lean_ctor_get(x_23, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = lean_nat_dec_le(x_24, x_26); -lean_dec(x_26); -if (x_27 == 0) +x_12 = 50; +x_13 = l_IO_sleep(x_12, x_7); +if (lean_obj_tag(x_13) == 0) { -uint32_t x_28; lean_object* x_29; -lean_dec(x_23); -lean_free_object(x_4); -x_28 = 50; -x_29 = l_IO_sleep(x_28, x_22); -if (lean_obj_tag(x_29) == 0) -{ -lean_object* x_30; -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -x_3 = x_30; +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_3 = x_14; goto _start; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_32 = lean_ctor_get(x_29, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_29, 1); -lean_inc(x_33); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_34 = x_29; -} else { - lean_dec_ref(x_29); - x_34 = lean_box(0); +uint8_t x_16; +x_16 = !lean_is_exclusive(x_13); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_13, 0); +x_18 = lean_io_error_to_string(x_17); +x_19 = 4; +x_20 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_19); +lean_ctor_set(x_13, 0, x_20); +return x_13; } -if (lean_is_scalar(x_34)) { - x_35 = lean_alloc_ctor(1, 2, 0); -} else { - x_35 = x_34; +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; +x_21 = lean_ctor_get(x_13, 0); +x_22 = lean_ctor_get(x_13, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_13); +x_23 = lean_io_error_to_string(x_21); +x_24 = 4; +x_25 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set_uint8(x_25, sizeof(void*)*1, x_24); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_22); +return x_26; } -lean_ctor_set(x_35, 0, x_32); -lean_ctor_set(x_35, 1, x_33); -return x_35; } } else { -lean_object* x_36; -x_36 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_36, 0, x_23); -lean_ctor_set(x_4, 0, x_36); return x_4; } } -} else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_37 = lean_ctor_get(x_4, 0); -x_38 = lean_ctor_get(x_4, 1); -lean_inc(x_38); -lean_inc(x_37); +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_27 = lean_ctor_get(x_4, 0); +x_28 = lean_ctor_get(x_4, 1); +lean_inc(x_28); +lean_inc(x_27); lean_dec(x_4); -x_39 = lean_ctor_get(x_37, 0); -lean_inc(x_39); -if (lean_is_exclusive(x_37)) { - lean_ctor_release(x_37, 0); - x_40 = x_37; -} else { - lean_dec_ref(x_37); - x_40 = lean_box(0); -} -x_41 = lean_ctor_get(x_1, 1); -x_42 = lean_ctor_get(x_39, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_42, 1); -lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_nat_dec_le(x_41, x_43); -lean_dec(x_43); -if (x_44 == 0) +x_29 = lean_ctor_get(x_1, 1); +x_30 = lean_ctor_get(x_27, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_31); +lean_dec(x_30); +x_32 = lean_nat_dec_le(x_29, x_31); +lean_dec(x_31); +if (x_32 == 0) { -uint32_t x_45; lean_object* x_46; -lean_dec(x_40); -lean_dec(x_39); -x_45 = 50; -x_46 = l_IO_sleep(x_45, x_38); -if (lean_obj_tag(x_46) == 0) +uint32_t x_33; lean_object* x_34; +lean_dec(x_27); +x_33 = 50; +x_34 = l_IO_sleep(x_33, x_28); +if (lean_obj_tag(x_34) == 0) { -lean_object* x_47; -x_47 = lean_ctor_get(x_46, 1); -lean_inc(x_47); -lean_dec(x_46); -x_3 = x_47; +lean_object* x_35; +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_3 = x_35; goto _start; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = lean_ctor_get(x_46, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_46, 1); -lean_inc(x_50); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_51 = x_46; +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; +x_37 = lean_ctor_get(x_34, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_34, 1); +lean_inc(x_38); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_39 = x_34; } else { - lean_dec_ref(x_46); - x_51 = lean_box(0); + lean_dec_ref(x_34); + x_39 = lean_box(0); } -if (lean_is_scalar(x_51)) { - x_52 = lean_alloc_ctor(1, 2, 0); +x_40 = lean_io_error_to_string(x_37); +x_41 = 4; +x_42 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set_uint8(x_42, sizeof(void*)*1, x_41); +if (lean_is_scalar(x_39)) { + x_43 = lean_alloc_ctor(1, 2, 0); } else { - x_52 = x_51; + x_43 = x_39; } -lean_ctor_set(x_52, 0, x_49); -lean_ctor_set(x_52, 1, x_50); -return x_52; +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_38); +return x_43; } } else { -lean_object* x_53; lean_object* x_54; -if (lean_is_scalar(x_40)) { - x_53 = lean_alloc_ctor(1, 1, 0); -} else { - x_53 = x_40; -} -lean_ctor_set(x_53, 0, x_39); -x_54 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_38); -return x_54; +lean_object* x_44; +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_27); +lean_ctor_set(x_44, 1, x_28); +return x_44; } } } @@ -15259,6 +14814,31 @@ lean_dec(x_1); return x_4; } } +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} LEAN_EXPORT uint8_t l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__1(lean_object* x_1) { _start: { @@ -15304,113 +14884,71 @@ return x_1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -if (lean_obj_tag(x_1) == 0) +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1(x_1, x_2, x_3); +if (lean_obj_tag(x_4) == 0) { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) -{ -lean_object* x_5; -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_3); -return x_5; -} -else -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; -x_6 = lean_ctor_get(x_1, 0); +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_5 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +x_6 = lean_ctor_get(x_4, 1); lean_inc(x_6); -lean_dec(x_1); -x_7 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_7, 0, x_6); -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_7); -lean_ctor_set(x_8, 1, x_3); -return x_8; +lean_dec(x_4); +x_7 = lean_ctor_get(x_5, 2); +lean_inc(x_7); +lean_dec(x_5); +x_8 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__1; +x_9 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_8, x_7, x_6); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; } } else { -uint8_t x_9; -x_9 = !lean_is_exclusive(x_1); -if (x_9 == 0) +uint8_t x_21; +x_21 = !lean_is_exclusive(x_4); +if (x_21 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_10 = lean_ctor_get(x_1, 0); -x_11 = lean_ctor_get(x_10, 2); -lean_inc(x_11); -lean_dec(x_10); -x_12 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__1; -x_13 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_12, x_11, x_3); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_15 = lean_ctor_get(x_13, 0); -x_16 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; -x_17 = l_Task_Priority_default; -x_18 = lean_task_map(x_16, x_15, x_17); -lean_ctor_set(x_1, 0, x_18); -lean_ctor_set(x_13, 0, x_1); -return x_13; +return x_4; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_19 = lean_ctor_get(x_13, 0); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_13); -x_21 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; -x_22 = l_Task_Priority_default; -x_23 = lean_task_map(x_21, x_19, x_22); -lean_ctor_set(x_1, 0, x_23); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_1); -lean_ctor_set(x_24, 1, x_20); +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_4, 0); +x_23 = lean_ctor_get(x_4, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_4); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); return x_24; } } -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_25 = lean_ctor_get(x_1, 0); -lean_inc(x_25); -lean_dec(x_1); -x_26 = lean_ctor_get(x_25, 2); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__1; -x_28 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_27, x_26, x_3); -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -if (lean_is_exclusive(x_28)) { - lean_ctor_release(x_28, 0); - lean_ctor_release(x_28, 1); - x_31 = x_28; -} else { - lean_dec_ref(x_28); - x_31 = lean_box(0); -} -x_32 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_29, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -if (lean_is_scalar(x_31)) { - x_36 = lean_alloc_ctor(0, 2, 0); -} else { - x_36 = x_31; -} -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_30); -return x_36; -} -} } } static lean_object* _init_l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1() { @@ -15424,7 +14962,7 @@ return x_1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_4 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleWaitForDiagnostics_waitLoop___boxed), 3, 1); lean_closure_set(x_4, 0, x_1); lean_inc(x_2); @@ -15434,12 +14972,19 @@ lean_inc(x_6); x_7 = lean_ctor_get(x_5, 1); lean_inc(x_7); lean_dec(x_5); -x_8 = lean_ctor_get(x_6, 0); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1; -x_10 = l_Lean_Server_RequestM_bindTask___rarg(x_8, x_9, x_2, x_7); -return x_10; +x_8 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1; +x_9 = l_Lean_Server_RequestM_bindTask___rarg(x_6, x_8, x_2, x_7); +return x_9; +} +} +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_handleWaitForDiagnostics___spec__1(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__1___boxed(lean_object* x_1) { @@ -15467,10 +15012,11 @@ _start: lean_object* x_4; x_4 = l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3(x_1, x_2, x_3); lean_dec(x_2); +lean_dec(x_1); return x_4; } } -static lean_object* _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1() { +static lean_object* _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1() { _start: { lean_object* x_1; @@ -15478,7 +15024,7 @@ x_1 = lean_mk_string("Cannot parse request params: "); return x_1; } } -static lean_object* _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2() { +static lean_object* _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2() { _start: { lean_object* x_1; @@ -15486,7 +15032,7 @@ x_1 = lean_mk_string("\n"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2(lean_object* x_1) { _start: { lean_object* x_2; @@ -15500,10 +15046,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -15523,10 +15069,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -15563,11 +15109,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -15617,7 +15188,7 @@ return x_11; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -15626,222 +15197,129 @@ x_2 = l_Lean_Json_mkObj(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1; +x_2 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1; return x_2; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___boxed), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___boxed), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -15849,29 +15327,29 @@ x_1 = lean_alloc_closure((void*)(l_String_decEq___boxed), 2, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1; x_2 = lean_alloc_closure((void*)(l_instBEq___rarg), 3, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -15880,11 +15358,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -15908,7 +15386,7 @@ return x_19; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1() { _start: { lean_object* x_1; @@ -15916,7 +15394,7 @@ x_1 = lean_mk_string("Failed to register LSP request handler for '"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2() { _start: { lean_object* x_1; @@ -15924,7 +15402,7 @@ x_1 = lean_mk_string("': already registered"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -15938,23 +15416,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -15972,22 +15450,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -15999,7 +15477,7 @@ return x_28; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1() { _start: { lean_object* x_1; @@ -16007,7 +15485,7 @@ x_1 = lean_mk_string("': only possible during initialization"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -16029,10 +15507,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -16046,10 +15524,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -16066,7 +15544,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -16096,7 +15574,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__4(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__5(lean_object* x_1) { _start: { lean_object* x_2; @@ -16110,10 +15588,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -16133,10 +15611,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -16173,11 +15651,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__4(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__5(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -16227,7 +15730,7 @@ return x_11; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -16235,218 +15738,125 @@ x_1 = lean_alloc_closure((void*)(l___private_Lean_Data_Lsp_LanguageFeatures_0__L return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__4(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__5(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -16455,11 +15865,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -16483,7 +15893,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -16497,23 +15907,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -16531,22 +15941,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -16558,7 +15968,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -16580,10 +15990,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -16597,10 +16007,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -16617,7 +16027,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__4(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__4(x_2, x_1, x_22, x_21); return x_23; } } @@ -16647,7 +16057,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__6(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__8(lean_object* x_1) { _start: { lean_object* x_2; @@ -16661,10 +16071,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -16684,10 +16094,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -16724,11 +16134,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__6(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__8(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -16778,7 +16213,7 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__2(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 0) @@ -16798,226 +16233,133 @@ return x_4; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__6(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__8(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -17026,11 +16368,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -17054,7 +16396,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -17068,23 +16410,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -17102,22 +16444,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -17129,7 +16471,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -17151,10 +16493,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -17168,10 +16510,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -17188,7 +16530,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -17218,7 +16560,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__8(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__11(lean_object* x_1) { _start: { lean_object* x_2; @@ -17232,10 +16574,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -17255,10 +16597,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -17295,7 +16637,32 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9(size_t x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13(size_t x_1, size_t x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -17324,11 +16691,11 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__8(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__11(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -17378,7 +16745,7 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__2(lean_object* x_1) { _start: { lean_object* x_2; size_t x_3; size_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -17387,233 +16754,140 @@ x_3 = lean_usize_of_nat(x_2); lean_dec(x_2); x_4 = 0; x_5 = x_1; -x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9(x_3, x_4, x_5); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13(x_3, x_4, x_5); x_7 = x_6; x_8 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_8, 0, x_7); return x_8; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__8(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__11(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -17622,11 +16896,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -17650,7 +16924,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -17664,23 +16938,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -17698,22 +16972,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -17725,7 +16999,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -17747,10 +17021,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -17764,10 +17038,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -17784,7 +17058,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -17814,7 +17088,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__11(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__15(lean_object* x_1) { _start: { lean_object* x_2; @@ -17828,10 +17102,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -17851,10 +17125,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -17891,7 +17165,32 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12(size_t x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17(size_t x_1, size_t x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -17920,11 +17219,11 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__11(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__15(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -17974,7 +17273,7 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__2(lean_object* x_1) { _start: { lean_object* x_2; size_t x_3; size_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -17983,233 +17282,140 @@ x_3 = lean_usize_of_nat(x_2); lean_dec(x_2); x_4 = 0; x_5 = x_1; -x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12(x_3, x_4, x_5); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17(x_3, x_4, x_5); x_7 = x_6; x_8 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_8, 0, x_7); return x_8; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__11(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__15(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -18218,11 +17424,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -18246,7 +17452,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -18260,23 +17466,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -18294,22 +17500,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -18321,7 +17527,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -18343,10 +17549,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -18360,10 +17566,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -18380,7 +17586,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -18410,7 +17616,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__14(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__19(lean_object* x_1) { _start: { lean_object* x_2; @@ -18424,10 +17630,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -18447,10 +17653,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -18487,11 +17693,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__14(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__19(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -18532,7 +17763,7 @@ return x_8; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__2(lean_object* x_1) { _start: { lean_object* x_2; size_t x_3; size_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -18548,226 +17779,133 @@ lean_ctor_set(x_8, 0, x_7); return x_8; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__14(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__19(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -18776,11 +17914,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -18804,7 +17942,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -18818,23 +17956,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -18852,22 +17990,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -18879,7 +18017,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -18901,10 +18039,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -18918,10 +18056,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -18938,7 +18076,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -18968,7 +18106,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__16(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__22(lean_object* x_1) { _start: { lean_object* x_2; @@ -18982,10 +18120,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -19005,10 +18143,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -19045,11 +18183,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__16(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__22(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -19090,7 +18253,7 @@ return x_8; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -19098,218 +18261,125 @@ x_1 = lean_alloc_closure((void*)(l___private_Lean_Data_Lsp_LanguageFeatures_0__L return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__16(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__22(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -19318,11 +18388,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -19346,7 +18416,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -19360,23 +18430,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -19394,22 +18464,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -19421,7 +18491,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -19443,10 +18513,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -19460,10 +18530,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -19480,7 +18550,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__4(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__4(x_2, x_1, x_22, x_21); return x_23; } } @@ -19510,7 +18580,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__18(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__25(lean_object* x_1) { _start: { lean_object* x_2; @@ -19524,10 +18594,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -19547,10 +18617,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -19587,11 +18657,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__18(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__25(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -19641,208 +18736,115 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__18(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__25(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__2), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__2), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -19851,11 +18853,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -19879,7 +18881,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -19893,23 +18895,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -19927,22 +18929,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -19954,7 +18956,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -19976,10 +18978,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -19993,10 +18995,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -20013,7 +19015,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__4(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__4(x_2, x_1, x_22, x_21); return x_23; } } @@ -20043,7 +19045,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(lean_object* x_1) { _start: { lean_object* x_2; @@ -20057,10 +19059,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -20080,10 +19082,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -20120,11 +19122,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -20174,7 +19201,7 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__2(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 0) @@ -20194,226 +19221,133 @@ return x_4; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -20422,11 +19356,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -20450,7 +19384,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -20464,23 +19398,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -20498,22 +19432,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -20525,7 +19459,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -20547,10 +19481,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -20564,10 +19498,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -20584,7 +19518,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -20614,7 +19548,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(lean_object* x_1) { _start: { lean_object* x_2; @@ -20628,10 +19562,10 @@ if (x_3 == 0) lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; x_4 = lean_ctor_get(x_2, 0); x_5 = l_Lean_Json_compress(x_1); -x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_6 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); -x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_8 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_9 = lean_string_append(x_7, x_8); x_10 = lean_string_append(x_9, x_4); lean_dec(x_4); @@ -20651,10 +19585,10 @@ x_15 = lean_ctor_get(x_2, 0); lean_inc(x_15); lean_dec(x_2); x_16 = l_Lean_Json_compress(x_1); -x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1; +x_17 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); -x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2; +x_19 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2; x_20 = lean_string_append(x_18, x_19); x_21 = lean_string_append(x_20, x_15); lean_dec(x_15); @@ -20691,11 +19625,36 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(x_1); +x_2 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(x_1); if (lean_obj_tag(x_2) == 0) { uint8_t x_3; @@ -20745,7 +19704,7 @@ return x_11; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__2(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 0) @@ -20765,226 +19724,133 @@ return x_4; } } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__2), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__2), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1; +x_1 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1; x_2 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; -x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(x_2); -if (lean_obj_tag(x_5) == 0) +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(x_2); +x_6 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__1), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__1), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3), 4, 1); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3), 4, 1); lean_closure_set(x_5, 0, x_1); x_6 = l_Lean_Server_requestHandlers; x_7 = lean_st_ref_take(x_6, x_4); @@ -20993,11 +19859,11 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1; +x_10 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_5); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_insert___rarg(x_12, x_13, x_8, x_2, x_11); x_15 = lean_st_ref_set(x_6, x_14, x_9); @@ -21021,7 +19887,7 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -21035,23 +19901,23 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4(x_1, x_2, x_11, x_9); return x_12; } else { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_1); -x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_13 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_14 = lean_string_append(x_13, x_2); lean_dec(x_2); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_16 = lean_string_append(x_14, x_15); x_17 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_17, 0, x_16); @@ -21069,22 +19935,22 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; x_21 = lean_box(0); -x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4(x_1, x_2, x_21, x_19); +x_22 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4(x_1, x_2, x_21, x_19); return x_22; } else { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_1); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_24 = lean_string_append(x_23, x_2); lean_dec(x_2); -x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2; +x_25 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2; x_26 = lean_string_append(x_24, x_25); x_27 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_27, 0, x_26); @@ -21096,7 +19962,7 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -21118,10 +19984,10 @@ if (x_7 == 0) lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); -x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_9 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_10 = lean_string_append(x_9, x_1); lean_dec(x_1); -x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_11 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); @@ -21135,10 +20001,10 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); lean_dec(x_4); -x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1; +x_15 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1; x_16 = lean_string_append(x_15, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1; +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -21155,7 +20021,7 @@ x_21 = lean_ctor_get(x_4, 1); lean_inc(x_21); lean_dec(x_4); x_22 = lean_box(0); -x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__5(x_2, x_1, x_22, x_21); +x_23 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__5(x_2, x_1, x_22, x_21); return x_23; } } @@ -21185,7 +20051,7 @@ return x_27; } } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1() { _start: { lean_object* x_1; @@ -21193,7 +20059,7 @@ x_1 = lean_mk_string("textDocument/waitForDiagnostics"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2() { _start: { lean_object* x_1; @@ -21201,7 +20067,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleWaitForDiagnosti return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3() { _start: { lean_object* x_1; @@ -21209,7 +20075,7 @@ x_1 = lean_mk_string("textDocument/completion"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4() { _start: { lean_object* x_1; @@ -21217,7 +20083,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleCompletion), 3, return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5() { _start: { lean_object* x_1; @@ -21225,7 +20091,7 @@ x_1 = lean_mk_string("textDocument/hover"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6() { _start: { lean_object* x_1; @@ -21233,7 +20099,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleHover), 3, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; @@ -21244,7 +20110,7 @@ lean_closure_set(x_3, 0, x_2); return x_3; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8() { _start: { lean_object* x_1; @@ -21252,7 +20118,7 @@ x_1 = lean_mk_string("textDocument/declaration"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; @@ -21263,7 +20129,7 @@ lean_closure_set(x_3, 0, x_2); return x_3; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10() { _start: { lean_object* x_1; @@ -21271,7 +20137,7 @@ x_1 = lean_mk_string("textDocument/definition"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; @@ -21282,7 +20148,7 @@ lean_closure_set(x_3, 0, x_2); return x_3; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12() { _start: { lean_object* x_1; @@ -21290,7 +20156,7 @@ x_1 = lean_mk_string("textDocument/typeDefinition"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13() { _start: { lean_object* x_1; @@ -21298,7 +20164,7 @@ x_1 = lean_mk_string("textDocument/documentHighlight"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14() { _start: { lean_object* x_1; @@ -21306,7 +20172,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentHighligh return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15() { _start: { lean_object* x_1; @@ -21314,7 +20180,7 @@ x_1 = lean_mk_string("textDocument/documentSymbol"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16() { _start: { lean_object* x_1; @@ -21322,7 +20188,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleDocumentSymbol__ return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17() { _start: { lean_object* x_1; @@ -21330,7 +20196,7 @@ x_1 = lean_mk_string("textDocument/semanticTokens/full"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18() { _start: { lean_object* x_1; @@ -21338,7 +20204,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokensFu return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19() { _start: { lean_object* x_1; @@ -21346,7 +20212,7 @@ x_1 = lean_mk_string("textDocument/semanticTokens/range"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20() { _start: { lean_object* x_1; @@ -21354,7 +20220,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handleSemanticTokensRa return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21() { _start: { lean_object* x_1; @@ -21362,7 +20228,7 @@ x_1 = lean_mk_string("$/lean/plainGoal"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22() { _start: { lean_object* x_1; @@ -21370,7 +20236,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handlePlainGoal), 3, 0 return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23() { _start: { lean_object* x_1; @@ -21378,7 +20244,7 @@ x_1 = lean_mk_string("$/lean/plainTermGoal"); return x_1; } } -static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24() { +static lean_object* _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24() { _start: { lean_object* x_1; @@ -21386,112 +20252,112 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_handlePlainTermGoal), return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1; -x_3 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2; -x_4 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1(x_2, x_3, x_1); +x_2 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1; +x_3 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2; +x_4 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1(x_2, x_3, x_1); if (lean_obj_tag(x_4) == 0) { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_5 = lean_ctor_get(x_4, 1); lean_inc(x_5); lean_dec(x_4); -x_6 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3; -x_7 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4; -x_8 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3(x_6, x_7, x_5); +x_6 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3; +x_7 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4; +x_8 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4(x_6, x_7, x_5); if (lean_obj_tag(x_8) == 0) { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_9 = lean_ctor_get(x_8, 1); lean_inc(x_9); lean_dec(x_8); -x_10 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5; -x_11 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6; -x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5(x_10, x_11, x_9); +x_10 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5; +x_11 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6; +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7(x_10, x_11, x_9); if (lean_obj_tag(x_12) == 0) { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_13 = lean_ctor_get(x_12, 1); lean_inc(x_13); lean_dec(x_12); -x_14 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8; -x_15 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7; -x_16 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7(x_14, x_15, x_13); +x_14 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8; +x_15 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7; +x_16 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10(x_14, x_15, x_13); if (lean_obj_tag(x_16) == 0) { lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); lean_dec(x_16); -x_18 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10; -x_19 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9; -x_20 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7(x_18, x_19, x_17); +x_18 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10; +x_19 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9; +x_20 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10(x_18, x_19, x_17); if (lean_obj_tag(x_20) == 0) { lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; x_21 = lean_ctor_get(x_20, 1); lean_inc(x_21); lean_dec(x_20); -x_22 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12; -x_23 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11; -x_24 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7(x_22, x_23, x_21); +x_22 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12; +x_23 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11; +x_24 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10(x_22, x_23, x_21); if (lean_obj_tag(x_24) == 0) { lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; x_25 = lean_ctor_get(x_24, 1); lean_inc(x_25); lean_dec(x_24); -x_26 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13; -x_27 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14; -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10(x_26, x_27, x_25); +x_26 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13; +x_27 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14; +x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14(x_26, x_27, x_25); if (lean_obj_tag(x_28) == 0) { lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; x_29 = lean_ctor_get(x_28, 1); lean_inc(x_29); lean_dec(x_28); -x_30 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15; -x_31 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16; -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13(x_30, x_31, x_29); +x_30 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15; +x_31 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16; +x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18(x_30, x_31, x_29); if (lean_obj_tag(x_32) == 0) { lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; x_33 = lean_ctor_get(x_32, 1); lean_inc(x_33); lean_dec(x_32); -x_34 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17; -x_35 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18; -x_36 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15(x_34, x_35, x_33); +x_34 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17; +x_35 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18; +x_36 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21(x_34, x_35, x_33); if (lean_obj_tag(x_36) == 0) { lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; x_37 = lean_ctor_get(x_36, 1); lean_inc(x_37); lean_dec(x_36); -x_38 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19; -x_39 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20; -x_40 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17(x_38, x_39, x_37); +x_38 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19; +x_39 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20; +x_40 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24(x_38, x_39, x_37); if (lean_obj_tag(x_40) == 0) { lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; x_41 = lean_ctor_get(x_40, 1); lean_inc(x_41); lean_dec(x_40); -x_42 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21; -x_43 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22; -x_44 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19(x_42, x_43, x_41); +x_42 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21; +x_43 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22; +x_44 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27(x_42, x_43, x_41); if (lean_obj_tag(x_44) == 0) { lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; x_45 = lean_ctor_get(x_44, 1); lean_inc(x_45); lean_dec(x_44); -x_46 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23; -x_47 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24; -x_48 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21(x_46, x_47, x_45); +x_46 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23; +x_47 = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24; +x_48 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30(x_46, x_47, x_45); return x_48; } else @@ -21748,43 +20614,83 @@ return x_92; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2(x_1); +x_2 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__6(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__9(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__12(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; lean_object* x_6; @@ -21792,20 +20698,30 @@ x_4 = lean_unbox_usize(x_1); lean_dec(x_1); x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__9(x_4, x_5, x_3); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__13(x_4, x_5, x_3); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__16(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; lean_object* x_6; @@ -21813,60 +20729,110 @@ x_4 = lean_unbox_usize(x_1); lean_dec(x_1); x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__12(x_4, x_5, x_3); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__17(x_4, x_5, x_3); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__20(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__23(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__26(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } @@ -21948,8 +20914,6 @@ l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__ lean_mark_persistent(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__6); l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7 = _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7(); lean_mark_persistent(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__7); -l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8 = _init_l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8(); -lean_mark_persistent(l_List_mapM___at_Lean_Server_FileWorker_getInteractiveGoals___spec__3___closed__8); l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__1(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__1); l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handlePlainGoal___spec__2___closed__2(); @@ -22056,8 +21020,6 @@ l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeT lean_mark_persistent(l_List_getLast_x21___at_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___spec__1___closed__4); l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___closed__1 = _init_l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_handleDocumentSymbol_sectionLikeToDocumentSymbols___closed__1); -l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1 = _init_l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_FileWorker_handleDocumentSymbol___rarg___lambda__3___closed__1); l_Lean_Server_FileWorker_noHighlightKinds___closed__1 = _init_l_Lean_Server_FileWorker_noHighlightKinds___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_noHighlightKinds___closed__1); l_Lean_Server_FileWorker_noHighlightKinds___closed__2 = _init_l_Lean_Server_FileWorker_noHighlightKinds___closed__2(); @@ -22092,8 +21054,6 @@ l_Lean_Server_FileWorker_noHighlightKinds___closed__16 = _init_l_Lean_Server_Fil lean_mark_persistent(l_Lean_Server_FileWorker_noHighlightKinds___closed__16); l_Lean_Server_FileWorker_noHighlightKinds = _init_l_Lean_Server_FileWorker_noHighlightKinds(); lean_mark_persistent(l_Lean_Server_FileWorker_noHighlightKinds); -l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1 = _init_l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1(); -lean_mark_persistent(l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens_highlightId___spec__1___closed__1); l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__1 = _init_l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__1); l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__2 = _init_l_Lean_Server_FileWorker_handleSemanticTokens_go___closed__2(); @@ -22106,6 +21066,8 @@ l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__ lean_mark_persistent(l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__2); l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3 = _init_l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3(); lean_mark_persistent(l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1___closed__3); +l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1 = _init_l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1(); +lean_mark_persistent(l_List_forIn_loop___at_Lean_Server_FileWorker_handleSemanticTokens___spec__2___lambda__1___closed__1); l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__1 = _init_l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__1); l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__2 = _init_l_Lean_Server_FileWorker_handleSemanticTokens___lambda__2___closed__2(); @@ -22120,127 +21082,127 @@ l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2 = _ini lean_mark_persistent(l_Lean_Server_FileWorker_handleWaitForDiagnostics___lambda__3___closed__2); l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1 = _init_l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_handleWaitForDiagnostics___closed__1); -l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1 = _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1(); -lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__1); -l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2 = _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2(); -lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__2___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__2___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__4___closed__3); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___lambda__5___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__1___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__2___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__3___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__5___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__7___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__10___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__13___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__2___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__15___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__17___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__19___lambda__4___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__1); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__3___closed__2); -l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__21___lambda__4___closed__1); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__1); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__2); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__3); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__4); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__5); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__6); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__7); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__8); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__9); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__10); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__11); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__12); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__13); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__14); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__15); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__16); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__17); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__18); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__19); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__20); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__21); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__22); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__23); -l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24(); -lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____closed__24); -res = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675_(lean_io_mk_world()); +l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1 = _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1(); +lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__1); +l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2 = _init_l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2(); +lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__2___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__2___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__4___closed__3); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___lambda__5___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__1___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__2___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__4___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__7___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__10___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__14___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__18___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__2___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__21___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__24___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__27___lambda__4___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__1); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__3___closed__2); +l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__30___lambda__4___closed__1); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__1); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__2); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__3); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__4); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__5); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__6); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__7); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__8); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__9); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__10); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__11); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__12); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__13); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__14); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__15); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__16); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__17); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__18); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__19); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__20); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__21); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__22); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__23); +l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24 = _init_l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24(); +lean_mark_persistent(l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____closed__24); +res = l_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Server/FileWorker/WidgetRequests.c b/stage0/stdlib/Lean/Server/FileWorker/WidgetRequests.c index 9f8a23b09c..22c4ce56e2 100644 --- a/stage0/stdlib/Lean/Server/FileWorker/WidgetRequests.c +++ b/stage0/stdlib/Lean/Server/FileWorker/WidgetRequests.c @@ -13,106 +13,110 @@ #ifdef __cplusplus extern "C" { #endif -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__9___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__2(lean_object*, lean_object*, lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4; lean_object* l_Lean_Server_FileWorker_RpcSession_store(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1; -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7; size_t lean_usize_add(size_t, size_t); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_fromJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_913_(lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__6; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1; static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instFromJsonRpcEncodingPacket___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t); LEAN_EXPORT uint8_t l_Lean_Widget_getInteractiveDiagnostics___lambda__2(lean_object*); static lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instToJsonRpcEncodingPacket___closed__1; -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1; lean_object* lean_name_mk_string(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg___lambda__2(lean_object*, size_t, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonDocumentFilter____x40_Lean_Data_Lsp_Basic___hyg_1847____spec__1(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed__const__1; +lean_object* lean_io_error_to_string(lean_object*); lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____rarg(lean_object*, lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_instInhabitedInfoPopup___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__5(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__2(lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2; lean_object* l_Lean_Elab_Info_type_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__18___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); -lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(lean_object*); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__5___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instFromJsonRpcEncodingPacket; -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(lean_object*, lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonDocumentFilter____x40_Lean_Data_Lsp_Basic___hyg_1817____spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__5; -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__2___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_MsgToInteractive_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_57_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__5; static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_364____closed__2; lean_object* lean_st_ref_get(lean_object*, lean_object*); extern lean_object* l_Lean_instHashableName; +static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__17___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3; -uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(lean_object*, lean_object*); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3; static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__2(lean_object*); LEAN_EXPORT uint8_t l_Lean_Widget_getInteractiveDiagnostics___lambda__3(lean_object*, lean_object*); lean_object* l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3(lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); lean_object* l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_364____boxed(lean_object*); -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__4(lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__13(lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_364____closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(size_t, size_t, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1; lean_object* l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__6(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17(size_t, size_t, lean_object*); static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; lean_object* l_Lean_FileMap_lspPosToUtf8Pos(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___spec__2(lean_object*); lean_object* l_Std_RBNode_find___at_Lean_Server_registerRpcCallHandler___spec__1(lean_object*, uint64_t); +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__9(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__10(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3; LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2(lean_object*); -static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__8___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_join___rarg(lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__14___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_toJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_948_(lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_fromJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_913____boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instFromJsonRpcEncodingPacket; @@ -120,25 +124,25 @@ LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initF static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_fromJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_913____closed__1; extern lean_object* l_Lean_Server_rpcProcedures; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__11(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instFromJsonGetInteractiveDiagnosticsParams; -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5; LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_fromJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_913____spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instInhabitedGetInteractiveDiagnosticsParams; LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_opt___at___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_toJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_948____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Widget_getInteractiveDiagnostics___spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__14(lean_object*); -static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Widget_getInteractiveDiagnostics___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__5(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_toJsonLineRange____x40_Lean_Data_Lsp_Extra___hyg_1666_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -147,43 +151,40 @@ LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncod LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__9(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___closed__1; -static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2; lean_object* l_List_getLast_x3f___rarg(lean_object*); static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__8(lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instToJsonRpcEncodingPacket; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__17___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____rarg(lean_object*, lean_object*, size_t); lean_object* l_Lean_Json_compress(lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics___lambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_fromJsonGetInteractiveDiagnosticsParams____x40_Lean_Server_FileWorker_WidgetRequests___hyg_913____spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Widget_getInteractiveDiagnostics___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed__const__1; LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__3; lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__3(lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____closed__3; lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____rarg(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__4___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__11(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Lsp_instBEqRpcRef; @@ -194,7 +195,6 @@ lean_object* l_Nat_repr(lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_364____closed__3; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__12(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__17___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6; static lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instFromJsonRpcEncodingPacket___closed__1; static lean_object* l_Lean_Widget_instToJsonGetInteractiveDiagnosticsParams___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433_(lean_object*); @@ -202,10 +202,10 @@ lean_object* l_Lean_Server_RequestM_bindTask___rarg(lean_object*, lean_object*, LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__9___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1; lean_object* l_Lean_Server_FileWorker_getInteractiveGoals(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_MsgToInteractive_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_109_(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__4(lean_object*, size_t); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__4___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__4; @@ -214,81 +214,76 @@ lean_object* l_Lean_Widget_exprToInteractiveExplicit(lean_object*, lean_object*, lean_object* l_Lean_Server_RequestM_mapTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instInhabitedInfoPopup; static lean_object* l_Lean_Widget_getInteractiveDiagnostics___lambda__1___closed__1; +static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__20(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__5___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_toJsonRpcRef____x40_Lean_Data_Lsp_Extra___hyg_883_(size_t); -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4; -lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(size_t, lean_object*); +static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__4(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_getInteractiveDiagnostics___lambda__1___closed__2; +static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__17___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__2___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Widget_exprToInteractive(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__10___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8; -static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4; +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4(size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__8___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__9___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_MsgToInteractive_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_57____closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_instToJsonGetInteractiveDiagnosticsParams; +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2; lean_object* l_Std_PersistentHashMap_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__2(lean_object*, lean_object*); extern lean_object* l_Task_Priority_default; static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__10___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__4; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(size_t, size_t, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(lean_object*); lean_object* l_Lean_Widget_msgToInteractive(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__15(lean_object*, lean_object*, lean_object*, size_t); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_MsgToInteractive_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_57____boxed(lean_object*); lean_object* l_Lean_Elab_Info_docString_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__2(lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__1; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___spec__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__21___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__8___rarg___lambda__2(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2; +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__2; lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveHypothesis_fromJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_80____spec__4(lean_object*, lean_object*); -static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4; -static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5; static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____closed__2; lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonPosition____x40_Lean_Data_Lsp_Basic___hyg_286____spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__2; @@ -296,6 +291,7 @@ LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfo LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__4___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__3; static lean_object* l_Lean_Widget_instInhabitedMsgToInteractive___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__21(lean_object*); lean_object* l_Lean_JsonNumber_fromNat(lean_object*); lean_object* l_Lean_Json_getObjValD(lean_object*, lean_object*); @@ -307,88 +303,92 @@ LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_i static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___closed__1; -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__2; uint8_t lean_nat_dec_le(lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__12(lean_object*, lean_object*, lean_object*, size_t); lean_object* l_Std_PersistentArray_toArray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__3___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(size_t, size_t, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Lsp_instHashableRpcRef; static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__1; static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433____closed__1; +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_MsgToInteractive_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_57____closed__2; -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(size_t, size_t, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics___lambda__2___boxed(lean_object*); static lean_object* l_Lean_Widget_instInhabitedMsgToInteractive___closed__2; static lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3; +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__7(lean_object*); lean_object* l_Lean_Json_mkObj(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instToJsonRpcEncodingPacket; lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonRpcRef____x40_Lean_Data_Lsp_Extra___hyg_848_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__17(lean_object*); +static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_MsgEmbed_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_439_(lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2(size_t, size_t, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__3; static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__6; +lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___closed__2; -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__2; +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1; static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__16(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1; LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__15(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__1(size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__15___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__3(lean_object*, lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__1; static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instToJsonRpcEncodingPacket___closed__1; +static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__3(lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; lean_object* lean_io_initializing(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____rarg(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(lean_object*); +static lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__2(lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__1___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_RequestM_asTask___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__16___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__20___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(lean_object*, lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonRange____x40_Lean_Data_Lsp_Basic___hyg_458_(lean_object*); lean_object* l_Std_PersistentHashMap_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(lean_object*, lean_object*); +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3; +lean_object* l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveHypothesis_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_149____spec__1(lean_object*); lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__19(lean_object*); @@ -398,33 +398,38 @@ lean_object* l_Lean_Elab_Info_lctx(lean_object*); lean_object* lean_usize_to_nat(size_t); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__13(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(lean_object*, lean_object*); +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5; static lean_object* l_Lean_Widget_Lean_Widget_MsgToInteractive_instRpcEncodingMsgToInteractiveRpcEncodingPacket___closed__3; lean_object* l_Lean_Elab_ContextInfo_runMetaM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_fromJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_364_(lean_object*); static lean_object* l_Lean_Widget_instFromJsonGetInteractiveDiagnosticsParams___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1; lean_object* l_Lean_Server_FileWorker_getInteractiveTermGoal(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__18(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__9___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4; +static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6; +static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1; lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonLineRange____x40_Lean_Data_Lsp_Extra___hyg_1614_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5(lean_object*); static lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_RequestM_readDoc(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__7___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_CodeToken_fromJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveCode___hyg_189____spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__4___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ExceptT_bindCont___at_Lean_Widget_Lean_Widget_InfoPopup_instRpcEncodingInfoPopupRpcEncodingPacket___spec__19___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___lambda__1(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); extern lean_object* l_Lean_Name_instBEqName; -static lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6; +static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_instInhabitedMsgToInteractive; static lean_object* _init_l_Lean_Widget_instInhabitedMsgToInteractive___closed__1() { _start: @@ -1040,7 +1045,32 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1053,7 +1083,7 @@ lean_ctor_set(x_6, 1, x_3); return x_6; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1() { _start: { lean_object* x_1; @@ -1061,7 +1091,7 @@ x_1 = lean_mk_string("RPC reference '"); return x_1; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2() { _start: { lean_object* x_1; @@ -1069,7 +1099,7 @@ x_1 = lean_mk_string("' is not valid"); return x_1; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3() { _start: { lean_object* x_1; @@ -1077,7 +1107,7 @@ x_1 = lean_mk_string("RPC call type mismatch in reference '"); return x_1; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4() { _start: { lean_object* x_1; @@ -1085,7 +1115,7 @@ x_1 = lean_mk_string("'\nexpected '"); return x_1; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5() { _start: { lean_object* x_1; @@ -1093,7 +1123,7 @@ x_1 = lean_mk_string("', got '"); return x_1; } } -static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6() { +static lean_object* _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6() { _start: { lean_object* x_1; @@ -1101,7 +1131,7 @@ x_1 = lean_mk_string("'"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg(lean_object* x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg(lean_object* x_1, size_t x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -1117,10 +1147,10 @@ lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_ lean_dec(x_1); x_9 = lean_usize_to_nat(x_2); x_10 = l_Nat_repr(x_9); -x_11 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1; +x_11 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); -x_13 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2; +x_13 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2; x_14 = lean_string_append(x_12, x_13); x_15 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_15, 0, x_14); @@ -1148,21 +1178,21 @@ lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean lean_dec(x_20); x_22 = lean_usize_to_nat(x_2); x_23 = l_Nat_repr(x_22); -x_24 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3; +x_24 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3; x_25 = lean_string_append(x_24, x_23); lean_dec(x_23); -x_26 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4; +x_26 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4; x_27 = lean_string_append(x_25, x_26); x_28 = 1; x_29 = l_Lean_Name_toString(x_1, x_28); x_30 = lean_string_append(x_27, x_29); lean_dec(x_29); -x_31 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5; +x_31 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5; x_32 = lean_string_append(x_30, x_31); x_33 = l_Lean_Name_toString(x_19, x_28); x_34 = lean_string_append(x_32, x_33); lean_dec(x_33); -x_35 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6; +x_35 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6; x_36 = lean_string_append(x_34, x_35); x_37 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_37, 0, x_36); @@ -1177,7 +1207,7 @@ lean_free_object(x_17); lean_dec(x_19); lean_dec(x_1); x_38 = lean_box(0); -x_39 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1(x_20, x_38, x_3); +x_39 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1(x_20, x_38, x_3); return x_39; } } @@ -1196,21 +1226,21 @@ lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean lean_dec(x_41); x_43 = lean_usize_to_nat(x_2); x_44 = l_Nat_repr(x_43); -x_45 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3; +x_45 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3; x_46 = lean_string_append(x_45, x_44); lean_dec(x_44); -x_47 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4; +x_47 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4; x_48 = lean_string_append(x_46, x_47); x_49 = 1; x_50 = l_Lean_Name_toString(x_1, x_49); x_51 = lean_string_append(x_48, x_50); lean_dec(x_50); -x_52 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5; +x_52 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5; x_53 = lean_string_append(x_51, x_52); x_54 = l_Lean_Name_toString(x_40, x_49); x_55 = lean_string_append(x_53, x_54); lean_dec(x_54); -x_56 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6; +x_56 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6; x_57 = lean_string_append(x_55, x_56); x_58 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_58, 0, x_57); @@ -1225,22 +1255,22 @@ lean_object* x_60; lean_object* x_61; lean_dec(x_40); lean_dec(x_1); x_60 = lean_box(0); -x_61 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1(x_41, x_60, x_3); +x_61 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1(x_41, x_60, x_3); return x_61; } } } } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___boxed), 3, 0); +x_2 = lean_alloc_closure((void*)(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___boxed), 3, 0); return x_2; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1() { +static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1() { _start: { lean_object* x_1; @@ -1248,17 +1278,17 @@ x_1 = lean_mk_string("Lean"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2() { +static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1; +x_2 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3() { +static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3() { _start: { lean_object* x_1; @@ -1266,26 +1296,26 @@ x_1 = lean_mk_string("MessageData"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4() { +static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2; -x_2 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3; +x_1 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2; +x_2 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(size_t x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(size_t x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; -x_3 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4; -x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg(x_3, x_1, x_2); +x_3 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4; +x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg(x_3, x_1, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -1294,7 +1324,7 @@ x_5 = l_Lean_Server_FileWorker_RpcSession_store(x_3, x_1, x_4); return x_5; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1() { +static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1() { _start: { lean_object* x_1; @@ -1302,17 +1332,17 @@ x_1 = lean_mk_string("Widget"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2() { +static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2; -x_2 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1; +x_1 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2; +x_2 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3() { +static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3() { _start: { lean_object* x_1; @@ -1320,26 +1350,26 @@ x_1 = lean_mk_string("InfoWithCtx"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4() { +static lean_object* _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; -x_2 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3; +x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; +x_2 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; -x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4; -x_4 = l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(x_3, x_1, x_2); +x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4; +x_4 = l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_3, x_1, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { _start: { uint8_t x_6; @@ -1362,7 +1392,7 @@ x_10 = lean_unsigned_to_nat(0u); x_11 = lean_array_uset(x_4, x_3, x_10); x_12 = x_9; lean_inc(x_1); -x_13 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_1, x_12, x_5); +x_13 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_1, x_12, x_5); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); @@ -1379,7 +1409,7 @@ goto _start; } } } -static lean_object* _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1() { +static lean_object* _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1() { _start: { size_t x_1; lean_object* x_2; @@ -1388,7 +1418,7 @@ x_2 = lean_box_usize(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { switch (lean_obj_tag(x_2)) { @@ -1432,8 +1462,8 @@ x_12 = lean_usize_of_nat(x_11); lean_dec(x_11); x_13 = x_10; x_14 = lean_box_usize(x_12); -x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1; -x_16 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed), 5, 4); +x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1; +x_16 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed), 5, 4); lean_closure_set(x_16, 0, x_1); lean_closure_set(x_16, 1, x_14); lean_closure_set(x_16, 2, x_15); @@ -1475,8 +1505,8 @@ x_26 = lean_usize_of_nat(x_25); lean_dec(x_25); x_27 = x_24; x_28 = lean_box_usize(x_26); -x_29 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1; -x_30 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed), 5, 4); +x_29 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1; +x_30 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed), 5, 4); lean_closure_set(x_30, 0, x_1); lean_closure_set(x_30, 1, x_28); lean_closure_set(x_30, 2, x_29); @@ -1523,7 +1553,7 @@ lean_inc(x_42); x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); lean_dec(x_41); -x_44 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_1, x_40, x_43); +x_44 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_1, x_40, x_43); x_45 = !lean_is_exclusive(x_44); if (x_45 == 0) { @@ -1565,7 +1595,7 @@ lean_inc(x_53); x_54 = lean_ctor_get(x_52, 1); lean_inc(x_54); lean_dec(x_52); -x_55 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_1, x_51, x_54); +x_55 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_1, x_51, x_54); x_56 = lean_ctor_get(x_55, 0); lean_inc(x_56); x_57 = lean_ctor_get(x_55, 1); @@ -1594,7 +1624,7 @@ return x_60; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -1625,11 +1655,11 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint8_t x_4; -x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5(x_1, x_2); +x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6(x_1, x_2); x_4 = !lean_is_exclusive(x_3); if (x_4 == 0) { @@ -1650,15 +1680,15 @@ return x_7; } } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___lambda__1), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___lambda__1), 2, 0); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1() { _start: { size_t x_1; lean_object* x_2; @@ -1667,7 +1697,7 @@ x_2 = lean_box_usize(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -1695,8 +1725,8 @@ x_14 = lean_usize_of_nat(x_13); lean_dec(x_13); x_15 = x_12; x_16 = lean_box_usize(x_14); -x_17 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1; -x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed), 4, 3); +x_17 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1; +x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed), 4, 3); lean_closure_set(x_18, 0, x_16); lean_closure_set(x_18, 1, x_17); lean_closure_set(x_18, 2, x_15); @@ -1709,8 +1739,8 @@ lean_inc(x_22); lean_dec(x_20); x_23 = lean_ctor_get(x_11, 1); lean_inc(x_23); -x_24 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_25 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_24, x_23, x_22); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_25 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_24, x_23, x_22); x_26 = lean_ctor_get(x_11, 2); lean_inc(x_26); lean_dec(x_11); @@ -1749,7 +1779,7 @@ if (x_38 == 0) { lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; size_t x_44; size_t x_45; lean_object* x_46; lean_object* x_47; x_39 = lean_ctor_get(x_26, 0); -x_40 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_24, x_39, x_37); +x_40 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_24, x_39, x_37); x_41 = lean_ctor_get(x_40, 0); lean_inc(x_41); x_42 = lean_ctor_get(x_40, 1); @@ -1775,7 +1805,7 @@ lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean x_49 = lean_ctor_get(x_26, 0); lean_inc(x_49); lean_dec(x_26); -x_50 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_24, x_49, x_37); +x_50 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_24, x_49, x_37); x_51 = lean_ctor_get(x_50, 0); lean_inc(x_51); x_52 = lean_ctor_get(x_50, 1); @@ -1800,7 +1830,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -1809,16 +1839,16 @@ x_5 = l_Lean_Server_FileWorker_RpcSession_store(x_3, x_1, x_4); return x_5; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; -x_3 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4; -x_4 = l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(x_3, x_1, x_2); +x_3 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4; +x_4 = l_Lean_Server_WithRpcRef_encodeUnsafe___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_3, x_1, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { _start: { uint8_t x_6; @@ -1841,7 +1871,7 @@ x_10 = lean_unsigned_to_nat(0u); x_11 = lean_array_uset(x_4, x_3, x_10); x_12 = x_9; lean_inc(x_1); -x_13 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_1, x_12, x_5); +x_13 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_1, x_12, x_5); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); @@ -1858,7 +1888,7 @@ goto _start; } } } -static lean_object* _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1() { +static lean_object* _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1() { _start: { size_t x_1; lean_object* x_2; @@ -1867,7 +1897,7 @@ x_2 = lean_box_usize(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { switch (lean_obj_tag(x_2)) { @@ -1911,8 +1941,8 @@ x_12 = lean_usize_of_nat(x_11); lean_dec(x_11); x_13 = x_10; x_14 = lean_box_usize(x_12); -x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1; -x_16 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed), 5, 4); +x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1; +x_16 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___boxed), 5, 4); lean_closure_set(x_16, 0, x_1); lean_closure_set(x_16, 1, x_14); lean_closure_set(x_16, 2, x_15); @@ -1954,8 +1984,8 @@ x_26 = lean_usize_of_nat(x_25); lean_dec(x_25); x_27 = x_24; x_28 = lean_box_usize(x_26); -x_29 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1; -x_30 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed), 5, 4); +x_29 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1; +x_30 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___boxed), 5, 4); lean_closure_set(x_30, 0, x_1); lean_closure_set(x_30, 1, x_28); lean_closure_set(x_30, 2, x_29); @@ -2002,7 +2032,7 @@ lean_inc(x_42); x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); lean_dec(x_41); -x_44 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_1, x_40, x_43); +x_44 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_1, x_40, x_43); x_45 = !lean_is_exclusive(x_44); if (x_45 == 0) { @@ -2044,7 +2074,7 @@ lean_inc(x_53); x_54 = lean_ctor_get(x_52, 1); lean_inc(x_54); lean_dec(x_52); -x_55 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_1, x_51, x_54); +x_55 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_1, x_51, x_54); x_56 = lean_ctor_get(x_55, 0); lean_inc(x_56); x_57 = lean_ctor_get(x_55, 1); @@ -2073,7 +2103,7 @@ return x_60; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(size_t x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17(size_t x_1, size_t x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -2091,7 +2121,7 @@ x_6 = lean_array_uget(x_3, x_2); x_7 = lean_unsigned_to_nat(0u); x_8 = lean_array_uset(x_3, x_2, x_7); x_9 = x_6; -x_10 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_9); +x_10 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_9); x_11 = 1; x_12 = lean_usize_add(x_2, x_11); x_13 = x_10; @@ -2102,7 +2132,7 @@ goto _start; } } } -static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1() { +static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1() { _start: { lean_object* x_1; @@ -2110,7 +2140,7 @@ x_1 = lean_mk_string("text"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2() { +static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2() { _start: { lean_object* x_1; @@ -2118,7 +2148,7 @@ x_1 = lean_mk_string("append"); return x_1; } } -static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3() { +static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3() { _start: { lean_object* x_1; lean_object* x_2; @@ -2127,7 +2157,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4() { +static lean_object* _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4() { _start: { lean_object* x_1; @@ -2135,7 +2165,7 @@ x_1 = lean_mk_string("tag"); return x_1; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(lean_object* x_1) { _start: { switch (lean_obj_tag(x_1)) { @@ -2147,7 +2177,7 @@ lean_inc(x_2); lean_dec(x_1); x_3 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_3, 0, x_2); -x_4 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1; +x_4 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1; x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_4); lean_ctor_set(x_5, 1, x_3); @@ -2169,11 +2199,11 @@ x_11 = lean_usize_of_nat(x_10); lean_dec(x_10); x_12 = 0; x_13 = x_9; -x_14 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_11, x_12, x_13); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17(x_11, x_12, x_13); x_15 = x_14; x_16 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_16, 0, x_15); -x_17 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2; +x_17 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2; x_18 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_16); @@ -2193,13 +2223,13 @@ x_23 = lean_ctor_get(x_1, 1); lean_inc(x_23); lean_dec(x_1); x_24 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_MsgEmbed_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_439_(x_22); -x_25 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_23); -x_26 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3; +x_25 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_23); +x_26 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3; x_27 = lean_array_push(x_26, x_24); x_28 = lean_array_push(x_27, x_25); x_29 = lean_alloc_ctor(4, 1, 0); lean_ctor_set(x_29, 0, x_28); -x_30 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4; +x_30 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4; x_31 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_29); @@ -2213,17 +2243,7 @@ return x_34; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_4, 0, x_1); -lean_ctor_set(x_4, 1, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1() { _start: { lean_object* x_1; @@ -2231,7 +2251,7 @@ x_1 = lean_mk_string("Cannot decode params in RPC call '"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2() { _start: { lean_object* x_1; @@ -2239,7 +2259,7 @@ x_1 = lean_mk_string("("); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3() { _start: { lean_object* x_1; @@ -2247,7 +2267,7 @@ x_1 = lean_mk_string(")'\n"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; size_t x_9; lean_object* x_10; lean_object* x_11; @@ -2258,160 +2278,88 @@ lean_inc(x_8); lean_dec(x_4); x_9 = lean_unbox_usize(x_7); lean_dec(x_7); -x_10 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(x_9, x_1); +x_10 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(x_9, x_1); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); lean_dec(x_10); if (lean_obj_tag(x_11) == 0) { -uint8_t x_12; +lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_dec(x_8); -x_12 = !lean_is_exclusive(x_11); -if (x_12 == 0) -{ -lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; -x_13 = lean_ctor_get(x_11, 0); -x_14 = 1; -x_15 = l_Lean_Name_toString(x_2, x_14); -x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1; -x_17 = lean_string_append(x_16, x_15); -lean_dec(x_15); -x_18 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2; -x_19 = lean_string_append(x_17, x_18); -x_20 = l_Lean_Json_compress(x_3); -x_21 = lean_string_append(x_19, x_20); -lean_dec(x_20); -x_22 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3; -x_23 = lean_string_append(x_21, x_22); -x_24 = lean_string_append(x_23, x_13); -lean_dec(x_13); -x_25 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; -x_26 = lean_string_append(x_24, x_25); -x_27 = 3; -x_28 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set_uint8(x_28, sizeof(void*)*1, x_27); -lean_ctor_set(x_11, 0, x_28); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_11); -lean_ctor_set(x_29, 1, x_6); -return x_29; -} -else -{ -lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_30 = lean_ctor_get(x_11, 0); -lean_inc(x_30); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); lean_dec(x_11); -x_31 = 1; -x_32 = l_Lean_Name_toString(x_2, x_31); -x_33 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1; -x_34 = lean_string_append(x_33, x_32); -lean_dec(x_32); -x_35 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2; -x_36 = lean_string_append(x_34, x_35); -x_37 = l_Lean_Json_compress(x_3); -x_38 = lean_string_append(x_36, x_37); -lean_dec(x_37); -x_39 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3; -x_40 = lean_string_append(x_38, x_39); -x_41 = lean_string_append(x_40, x_30); -lean_dec(x_30); -x_42 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; -x_43 = lean_string_append(x_41, x_42); -x_44 = 3; -x_45 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set_uint8(x_45, sizeof(void*)*1, x_44); -x_46 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_46, 0, x_45); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_6); -return x_47; -} +x_13 = 1; +x_14 = l_Lean_Name_toString(x_2, x_13); +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1; +x_16 = lean_string_append(x_15, x_14); +lean_dec(x_14); +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2; +x_18 = lean_string_append(x_16, x_17); +x_19 = l_Lean_Json_compress(x_3); +x_20 = lean_string_append(x_18, x_19); +lean_dec(x_19); +x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3; +x_22 = lean_string_append(x_20, x_21); +x_23 = lean_string_append(x_22, x_12); +lean_dec(x_12); +x_24 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; +x_25 = lean_string_append(x_23, x_24); +x_26 = 3; +x_27 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set_uint8(x_27, sizeof(void*)*1, x_26); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_6); +return x_28; } else { -uint8_t x_48; +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_dec(x_3); lean_dec(x_2); -x_48 = !lean_is_exclusive(x_11); -if (x_48 == 0) -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_49 = lean_ctor_get(x_11, 0); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_8); -lean_ctor_set(x_11, 0, x_50); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_11); -lean_ctor_set(x_51, 1, x_6); -return x_51; -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_52 = lean_ctor_get(x_11, 0); -lean_inc(x_52); +x_29 = lean_ctor_get(x_11, 0); +lean_inc(x_29); lean_dec(x_11); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_8); -x_54 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_54, 0, x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_6); -return x_55; +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_8); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_6); +return x_31; } } } -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { if (lean_obj_tag(x_2) == 0) { -uint8_t x_5; +lean_object* x_5; lean_object* x_6; lean_dec(x_3); lean_dec(x_1); -x_5 = !lean_is_exclusive(x_2); -if (x_5 == 0) -{ -lean_object* x_6; -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_2); +x_5 = lean_ctor_get(x_2, 0); +lean_inc(x_5); +lean_dec(x_2); +x_6 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_6, 0, x_5); lean_ctor_set(x_6, 1, x_4); return x_6; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_7; lean_object* x_8; x_7 = lean_ctor_get(x_2, 0); lean_inc(x_7); lean_dec(x_2); -x_8 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_8, 0, x_7); -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_8); -lean_ctor_set(x_9, 1, x_4); -return x_9; -} -} -else -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_2, 0); -lean_inc(x_10); -lean_dec(x_2); -x_11 = lean_apply_3(x_1, x_10, x_3, x_4); -return x_11; +x_8 = lean_apply_3(x_1, x_7, x_3, x_4); +return x_8; } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1() { _start: { size_t x_1; lean_object* x_2; @@ -2420,7 +2368,7 @@ x_2 = lean_box_usize(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3(lean_object* x_1, lean_object* x_2) { _start: { switch (lean_obj_tag(x_1)) { @@ -2430,8 +2378,8 @@ lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; x_3 = lean_ctor_get(x_1, 0); lean_inc(x_3); lean_dec(x_1); -x_4 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_5 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_4, x_3, x_2); +x_4 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_5 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_4, x_3, x_2); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { @@ -2471,8 +2419,8 @@ x_16 = lean_usize_of_nat(x_15); lean_dec(x_15); x_17 = x_14; x_18 = lean_box_usize(x_16); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1; -x_20 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed), 4, 3); +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1; +x_20 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed), 4, 3); lean_closure_set(x_20, 0, x_18); lean_closure_set(x_20, 1, x_19); lean_closure_set(x_20, 2, x_17); @@ -2485,8 +2433,8 @@ lean_inc(x_24); lean_dec(x_22); x_25 = lean_ctor_get(x_13, 1); lean_inc(x_25); -x_26 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_27 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_26, x_25, x_24); +x_26 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_27 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_26, x_25, x_24); x_28 = lean_ctor_get(x_13, 2); lean_inc(x_28); lean_dec(x_13); @@ -2615,7 +2563,7 @@ lean_inc(x_59); x_60 = lean_ctor_get(x_1, 2); lean_inc(x_60); lean_dec(x_1); -x_61 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(x_60, x_2); +x_61 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_encodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__12(x_60, x_2); x_62 = !lean_is_exclusive(x_61); if (x_62 == 0) { @@ -2649,125 +2597,69 @@ return x_68; } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 2, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { if (lean_obj_tag(x_3) == 0) { -uint8_t x_6; +lean_object* x_6; lean_object* x_7; lean_dec(x_1); -x_6 = !lean_is_exclusive(x_3); -if (x_6 == 0) -{ -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_3); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +lean_dec(x_3); +x_7 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); return x_7; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); lean_dec(x_3); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_5); -return x_10; -} +x_9 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1; +x_10 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_9, x_8, x_1); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_st_ref_set(x_2, x_12, x_5); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_13, 0); +lean_dec(x_15); +x_16 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_11); +lean_ctor_set(x_13, 0, x_16); +return x_13; } else { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_3); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_12 = lean_ctor_get(x_3, 0); -x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; -x_14 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_13, x_12, x_1); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -x_17 = lean_st_ref_set(x_2, x_16, x_5); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_dec(x_19); -x_20 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_15); -lean_ctor_set(x_3, 0, x_20); -lean_ctor_set(x_17, 0, x_3); -return x_17; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); -lean_dec(x_17); -x_22 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_15); -lean_ctor_set(x_3, 0, x_22); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_3); -lean_ctor_set(x_23, 1, x_21); -return x_23; -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_24 = lean_ctor_get(x_3, 0); -lean_inc(x_24); -lean_dec(x_3); -x_25 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; -x_26 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_25, x_24, x_1); -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = lean_st_ref_set(x_2, x_28, x_5); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_31 = x_29; -} else { - lean_dec_ref(x_29); - x_31 = lean_box(0); -} -x_32 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_27); -x_33 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_33, 0, x_32); -if (lean_is_scalar(x_31)) { - x_34 = lean_alloc_ctor(0, 2, 0); -} else { - x_34 = x_31; -} -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_30); -return x_34; +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_13, 1); +lean_inc(x_17); +lean_dec(x_13); +x_18 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_11); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +return x_19; } } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1() { _start: { lean_object* x_1; @@ -2775,29 +2667,19 @@ x_1 = lean_mk_string("Outdated RPC session"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; x_1 = 9; -x_2 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1; +x_2 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; x_3 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_3, 0, x_2); lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_1); return x_3; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(lean_object* x_1, lean_object* x_2, uint64_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(lean_object* x_1, lean_object* x_2, uint64_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; @@ -2811,15 +2693,15 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_9 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; -x_10 = lean_alloc_ctor(0, 2, 0); +x_9 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; +x_10 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_6); return x_10; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_11 = lean_ctor_get(x_8, 0); lean_inc(x_11); lean_dec(x_8); @@ -2831,10 +2713,10 @@ lean_inc(x_14); lean_dec(x_12); lean_inc(x_4); x_15 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2(x_4); -x_16 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 3, 1); +x_16 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___boxed), 3, 1); lean_closure_set(x_16, 0, x_15); lean_inc(x_13); -x_17 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___boxed), 6, 3); +x_17 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 6, 3); lean_closure_set(x_17, 0, x_13); lean_closure_set(x_17, 1, x_1); lean_closure_set(x_17, 2, x_4); @@ -2848,35 +2730,29 @@ lean_inc(x_20); x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); lean_dec(x_19); -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -lean_dec(x_20); -x_23 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 4, 1); -lean_closure_set(x_23, 0, x_2); +x_22 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2), 4, 1); +lean_closure_set(x_22, 0, x_2); lean_inc(x_5); -x_24 = l_Lean_Server_RequestM_bindTask___rarg(x_22, x_23, x_5, x_21); -x_25 = lean_ctor_get(x_24, 0); +x_23 = l_Lean_Server_RequestM_bindTask___rarg(x_20, x_22, x_5, x_21); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -lean_dec(x_25); -x_28 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed), 5, 2); -lean_closure_set(x_28, 0, x_13); -lean_closure_set(x_28, 1, x_11); -x_29 = l_Lean_Server_RequestM_mapTask___rarg(x_27, x_28, x_5, x_26); -return x_29; +lean_dec(x_23); +x_26 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed), 5, 2); +lean_closure_set(x_26, 0, x_13); +lean_closure_set(x_26, 1, x_11); +x_27 = l_Lean_Server_RequestM_mapTask___rarg(x_24, x_26, x_5, x_25); +return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_inc(x_1); -x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___boxed), 6, 2); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed), 6, 2); lean_closure_set(x_5, 0, x_1); lean_closure_set(x_5, 1, x_2); x_6 = l_Lean_Server_rpcProcedures; @@ -2910,7 +2786,7 @@ return x_17; } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1() { _start: { lean_object* x_1; @@ -2918,7 +2794,7 @@ x_1 = lean_mk_string("Failed to register RPC call handler for '"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2() { _start: { lean_object* x_1; @@ -2926,7 +2802,7 @@ x_1 = lean_mk_string("': already registered"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; uint8_t x_7; @@ -2940,13 +2816,13 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_1); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_8, x_1); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_8, x_1); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_free_object(x_6); x_11 = lean_box(0); -x_12 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(x_1, x_2, x_11, x_9); +x_12 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(x_1, x_2, x_11, x_9); return x_12; } else @@ -2955,10 +2831,10 @@ uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_obje lean_dec(x_2); x_13 = 1; x_14 = l_Lean_Name_toString(x_1, x_13); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_16 = lean_string_append(x_15, x_14); lean_dec(x_14); -x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -2976,12 +2852,12 @@ lean_inc(x_21); lean_inc(x_20); lean_dec(x_6); lean_inc(x_1); -x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_20, x_1); +x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_20, x_1); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; x_23 = lean_box(0); -x_24 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(x_1, x_2, x_23, x_21); +x_24 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(x_1, x_2, x_23, x_21); return x_24; } else @@ -2990,10 +2866,10 @@ uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_obje lean_dec(x_2); x_25 = 1; x_26 = l_Lean_Name_toString(x_1, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_30 = lean_string_append(x_28, x_29); x_31 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_31, 0, x_30); @@ -3037,7 +2913,7 @@ x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); x_9 = 1; x_10 = l_Lean_Name_toString(x_1, x_9); -x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -3056,7 +2932,7 @@ lean_inc(x_16); lean_dec(x_4); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -3076,7 +2952,7 @@ x_25 = lean_ctor_get(x_4, 1); lean_inc(x_25); lean_dec(x_4); x_26 = lean_box(0); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8(x_1, x_2, x_26, x_25); +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(x_1, x_2, x_26, x_25); return x_27; } } @@ -3117,49 +2993,55 @@ uint8_t x_6; x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; +return x_5; +} +else +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_8, 0, x_7); -lean_ctor_set(x_5, 0, x_8); -return x_5; -} -else -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -lean_inc(x_9); +x_8 = lean_ctor_get(x_5, 1); +lean_inc(x_8); +lean_inc(x_7); lean_dec(x_5); -x_11 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_11, 0, x_9); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_10); -return x_12; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_7); +lean_ctor_set(x_9, 1, x_8); +return x_9; } } else { -uint8_t x_13; -x_13 = !lean_is_exclusive(x_5); -if (x_13 == 0) +uint8_t x_10; +x_10 = !lean_is_exclusive(x_5); +if (x_10 == 0) { +lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_5, 0); +x_12 = lean_io_error_to_string(x_11); +x_13 = 4; +x_14 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set_uint8(x_14, sizeof(void*)*1, x_13); +lean_ctor_set(x_5, 0, x_14); return x_5; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_5, 0); -x_15 = lean_ctor_get(x_5, 1); +lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_5, 0); +x_16 = lean_ctor_get(x_5, 1); +lean_inc(x_16); lean_inc(x_15); -lean_inc(x_14); lean_dec(x_5); -x_16 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_16, 0, x_14); -lean_ctor_set(x_16, 1, x_15); -return x_16; +x_17 = lean_io_error_to_string(x_15); +x_18 = 4; +x_19 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set_uint8(x_19, sizeof(void*)*1, x_18); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; } } } @@ -3192,7 +3074,7 @@ static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_Wid _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; +x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; x_2 = l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -3234,36 +3116,46 @@ x_4 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_S return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___lambda__1(x_1, x_2, x_3); +x_4 = l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___lambda__1(x_1, x_2, x_3); lean_dec(x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; lean_object* x_5; x_4 = lean_unbox_usize(x_2); lean_dec(x_2); -x_5 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg(x_1, x_4, x_3); +x_5 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg(x_1, x_4, x_3); return x_5; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___boxed(lean_object* x_1, lean_object* x_2) { _start: { size_t x_3; lean_object* x_4; x_3 = lean_unbox_usize(x_1); lean_dec(x_1); -x_4 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3(x_3, x_2); +x_4 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4(x_3, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { size_t x_6; size_t x_7; lean_object* x_8; @@ -3271,22 +3163,10 @@ x_6 = lean_unbox_usize(x_2); lean_dec(x_2); x_7 = lean_unbox_usize(x_3); lean_dec(x_3); -x_8 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_1, x_6, x_7, x_4, x_5); +x_8 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(x_1, x_6, x_7, x_4, x_5); return x_8; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -size_t x_5; size_t x_6; lean_object* x_7; -x_5 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_6 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_7 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__9(x_5, x_6, x_3, x_4); -return x_7; -} -} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -3299,7 +3179,19 @@ x_7 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWork return x_7; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_6 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11(x_5, x_6, x_3, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { size_t x_6; size_t x_7; lean_object* x_8; @@ -3307,11 +3199,11 @@ x_6 = lean_unbox_usize(x_2); lean_dec(x_2); x_7 = lean_unbox_usize(x_3); lean_dec(x_3); -x_8 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_1, x_6, x_7, x_4, x_5); +x_8 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_1, x_6, x_7, x_4, x_5); return x_8; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; lean_object* x_6; @@ -3319,53 +3211,44 @@ x_4 = lean_unbox_usize(x_1); lean_dec(x_1); x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_4, x_5, x_3); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__17(x_4, x_5, x_3); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(x_1, x_2, x_3); -lean_dec(x_2); -return x_4; -} -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; -x_7 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); lean_dec(x_5); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; -x_6 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4(x_1, x_2, x_3, x_4, x_5); lean_dec(x_4); lean_dec(x_2); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { uint64_t x_7; lean_object* x_8; x_7 = lean_unbox_uint64(x_3); lean_dec(x_3); -x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(x_1, x_2, x_7, x_4, x_5, x_6); +x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5(x_1, x_2, x_7, x_4, x_5, x_6); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6(x_1, x_2, x_3, x_4); lean_dec(x_3); return x_5; } @@ -6256,12 +6139,37 @@ return x_29; } } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(size_t x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4(size_t x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; -x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4; -x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg(x_3, x_1, x_2); +x_3 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4; +x_4 = l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg(x_3, x_1, x_2); return x_4; } } @@ -6269,105 +6177,53 @@ LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_i _start: { lean_object* x_7; lean_object* x_8; -x_7 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(x_4, x_1); +x_7 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4(x_4, x_1); x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); lean_dec(x_7); if (lean_obj_tag(x_8) == 0) { -uint8_t x_9; -x_9 = !lean_is_exclusive(x_8); -if (x_9 == 0) -{ -lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; -x_10 = lean_ctor_get(x_8, 0); -x_11 = 1; -x_12 = l_Lean_Name_toString(x_2, x_11); -x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1; -x_14 = lean_string_append(x_13, x_12); -lean_dec(x_12); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2; -x_16 = lean_string_append(x_14, x_15); -x_17 = l_Lean_Json_compress(x_3); -x_18 = lean_string_append(x_16, x_17); -lean_dec(x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3; -x_20 = lean_string_append(x_18, x_19); -x_21 = lean_string_append(x_20, x_10); -lean_dec(x_10); -x_22 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; -x_23 = lean_string_append(x_21, x_22); -x_24 = 3; -x_25 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set_uint8(x_25, sizeof(void*)*1, x_24); -lean_ctor_set(x_8, 0, x_25); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_8); -lean_ctor_set(x_26, 1, x_6); -return x_26; -} -else -{ -lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_27 = lean_ctor_get(x_8, 0); -lean_inc(x_27); +lean_object* x_9; uint8_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); lean_dec(x_8); -x_28 = 1; -x_29 = l_Lean_Name_toString(x_2, x_28); -x_30 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1; -x_31 = lean_string_append(x_30, x_29); -lean_dec(x_29); -x_32 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2; -x_33 = lean_string_append(x_31, x_32); -x_34 = l_Lean_Json_compress(x_3); -x_35 = lean_string_append(x_33, x_34); -lean_dec(x_34); -x_36 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3; -x_37 = lean_string_append(x_35, x_36); -x_38 = lean_string_append(x_37, x_27); -lean_dec(x_27); -x_39 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; -x_40 = lean_string_append(x_38, x_39); -x_41 = 3; -x_42 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set_uint8(x_42, sizeof(void*)*1, x_41); -x_43 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_43, 0, x_42); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_43); -lean_ctor_set(x_44, 1, x_6); -return x_44; -} +x_10 = 1; +x_11 = l_Lean_Name_toString(x_2, x_10); +x_12 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1; +x_13 = lean_string_append(x_12, x_11); +lean_dec(x_11); +x_14 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2; +x_15 = lean_string_append(x_13, x_14); +x_16 = l_Lean_Json_compress(x_3); +x_17 = lean_string_append(x_15, x_16); +lean_dec(x_16); +x_18 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3; +x_19 = lean_string_append(x_17, x_18); +x_20 = lean_string_append(x_19, x_9); +lean_dec(x_9); +x_21 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3; +x_22 = lean_string_append(x_20, x_21); +x_23 = 3; +x_24 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*1, x_23); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_6); +return x_25; } else { -uint8_t x_45; +lean_object* x_26; lean_object* x_27; lean_dec(x_3); lean_dec(x_2); -x_45 = !lean_is_exclusive(x_8); -if (x_45 == 0) -{ -lean_object* x_46; -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_8); -lean_ctor_set(x_46, 1, x_6); -return x_46; -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_8, 0); -lean_inc(x_47); +x_26 = lean_ctor_get(x_8, 0); +lean_inc(x_26); lean_dec(x_8); -x_48 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_48, 0, x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_6); -return x_49; -} +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_6); +return x_27; } } } @@ -6389,878 +6245,863 @@ _start: lean_object* x_6; if (lean_obj_tag(x_3) == 0) { -uint8_t x_19; +lean_object* x_17; lean_object* x_18; lean_dec(x_2); -x_19 = !lean_is_exclusive(x_3); -if (x_19 == 0) -{ -lean_object* x_20; -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_3); -lean_ctor_set(x_20, 1, x_5); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_3, 0); -lean_inc(x_21); +x_17 = lean_ctor_get(x_3, 0); +lean_inc(x_17); lean_dec(x_3); -x_22 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_22, 0, x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_5); -return x_23; -} +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_5); +return x_18; } else { +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_3, 0); +lean_inc(x_19); +lean_dec(x_3); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_box(0); +x_22 = lean_ctor_get(x_19, 1); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; +x_23 = lean_ctor_get(x_19, 2); +lean_inc(x_23); +lean_dec(x_19); +if (lean_obj_tag(x_23) == 0) +{ lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_3, 0); -lean_inc(x_24); -lean_dec(x_3); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -if (lean_obj_tag(x_25) == 0) +x_24 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___closed__1; +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_2); +x_6 = x_25; +goto block_16; +} +else { -lean_object* x_26; lean_object* x_27; -x_26 = lean_box(0); -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -if (lean_obj_tag(x_27) == 0) +uint8_t x_26; +x_26 = !lean_is_exclusive(x_23); +if (x_26 == 0) { -lean_object* x_28; -x_28 = lean_ctor_get(x_24, 2); -lean_inc(x_28); -lean_dec(x_24); -if (lean_obj_tag(x_28) == 0) +lean_object* x_27; lean_object* x_28; +x_27 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_27, 0, x_21); +lean_ctor_set(x_27, 1, x_21); +lean_ctor_set(x_27, 2, x_23); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_2); +x_6 = x_28; +goto block_16; +} +else { -lean_object* x_29; lean_object* x_30; -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___closed__1; -x_30 = lean_alloc_ctor(0, 2, 0); +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_29 = lean_ctor_get(x_23, 0); +lean_inc(x_29); +lean_dec(x_23); +x_30 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_2); -x_6 = x_30; -goto block_18; -} -else -{ -uint8_t x_31; -x_31 = !lean_is_exclusive(x_28); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_32, 0, x_26); -lean_ctor_set(x_32, 1, x_26); -lean_ctor_set(x_32, 2, x_28); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_2); -x_6 = x_33; -goto block_18; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_28, 0); -lean_inc(x_34); -lean_dec(x_28); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -x_36 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_36, 0, x_26); -lean_ctor_set(x_36, 1, x_26); -lean_ctor_set(x_36, 2, x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_2); -x_6 = x_37; -goto block_18; +x_31 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_31, 0, x_21); +lean_ctor_set(x_31, 1, x_21); +lean_ctor_set(x_31, 2, x_30); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_2); +x_6 = x_32; +goto block_16; } } } else { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_27); -if (x_38 == 0) +uint8_t x_33; +x_33 = !lean_is_exclusive(x_22); +if (x_33 == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_39 = lean_ctor_get(x_27, 0); -x_40 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_41 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_40, x_39, x_2); -x_42 = !lean_is_exclusive(x_41); -if (x_42 == 0) +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_34 = lean_ctor_get(x_22, 0); +x_35 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_36 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_35, x_34, x_2); +x_37 = !lean_is_exclusive(x_36); +if (x_37 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_41, 0); -lean_ctor_set(x_27, 0, x_43); -x_44 = lean_ctor_get(x_24, 2); -lean_inc(x_44); -lean_dec(x_24); -if (lean_obj_tag(x_44) == 0) +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_36, 0); +lean_ctor_set(x_22, 0, x_38); +x_39 = lean_ctor_get(x_19, 2); +lean_inc(x_39); +lean_dec(x_19); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_45; +lean_object* x_40; +x_40 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_40, 0, x_21); +lean_ctor_set(x_40, 1, x_22); +lean_ctor_set(x_40, 2, x_21); +lean_ctor_set(x_36, 0, x_40); +x_6 = x_36; +goto block_16; +} +else +{ +uint8_t x_41; +x_41 = !lean_is_exclusive(x_39); +if (x_41 == 0) +{ +lean_object* x_42; +x_42 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_42, 0, x_21); +lean_ctor_set(x_42, 1, x_22); +lean_ctor_set(x_42, 2, x_39); +lean_ctor_set(x_36, 0, x_42); +x_6 = x_36; +goto block_16; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_39, 0); +lean_inc(x_43); +lean_dec(x_39); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_43); x_45 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_45, 0, x_26); -lean_ctor_set(x_45, 1, x_27); -lean_ctor_set(x_45, 2, x_26); -lean_ctor_set(x_41, 0, x_45); -x_6 = x_41; -goto block_18; +lean_ctor_set(x_45, 0, x_21); +lean_ctor_set(x_45, 1, x_22); +lean_ctor_set(x_45, 2, x_44); +lean_ctor_set(x_36, 0, x_45); +x_6 = x_36; +goto block_16; +} +} } else { -uint8_t x_46; -x_46 = !lean_is_exclusive(x_44); -if (x_46 == 0) -{ -lean_object* x_47; -x_47 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_47, 0, x_26); -lean_ctor_set(x_47, 1, x_27); -lean_ctor_set(x_47, 2, x_44); -lean_ctor_set(x_41, 0, x_47); -x_6 = x_41; -goto block_18; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_44, 0); +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_36, 0); +x_47 = lean_ctor_get(x_36, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_36); +lean_ctor_set(x_22, 0, x_46); +x_48 = lean_ctor_get(x_19, 2); lean_inc(x_48); -lean_dec(x_44); -x_49 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_49, 0, x_48); -x_50 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_50, 0, x_26); -lean_ctor_set(x_50, 1, x_27); -lean_ctor_set(x_50, 2, x_49); -lean_ctor_set(x_41, 0, x_50); -x_6 = x_41; -goto block_18; -} -} +lean_dec(x_19); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_49, 0, x_21); +lean_ctor_set(x_49, 1, x_22); +lean_ctor_set(x_49, 2, x_21); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_47); +x_6 = x_50; +goto block_16; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_41, 0); -x_52 = lean_ctor_get(x_41, 1); -lean_inc(x_52); +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_51 = lean_ctor_get(x_48, 0); lean_inc(x_51); -lean_dec(x_41); -lean_ctor_set(x_27, 0, x_51); -x_53 = lean_ctor_get(x_24, 2); -lean_inc(x_53); -lean_dec(x_24); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; +if (lean_is_exclusive(x_48)) { + lean_ctor_release(x_48, 0); + x_52 = x_48; +} else { + lean_dec_ref(x_48); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_52)) { + x_53 = lean_alloc_ctor(1, 1, 0); +} else { + x_53 = x_52; +} +lean_ctor_set(x_53, 0, x_51); x_54 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_54, 0, x_26); -lean_ctor_set(x_54, 1, x_27); -lean_ctor_set(x_54, 2, x_26); +lean_ctor_set(x_54, 0, x_21); +lean_ctor_set(x_54, 1, x_22); +lean_ctor_set(x_54, 2, x_53); x_55 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_52); +lean_ctor_set(x_55, 1, x_47); x_6 = x_55; -goto block_18; +goto block_16; +} +} } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_56 = lean_ctor_get(x_53, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_56 = lean_ctor_get(x_22, 0); lean_inc(x_56); -if (lean_is_exclusive(x_53)) { - lean_ctor_release(x_53, 0); - x_57 = x_53; +lean_dec(x_22); +x_57 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_58 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_57, x_56, x_2); +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_58, 1); +lean_inc(x_60); +if (lean_is_exclusive(x_58)) { + lean_ctor_release(x_58, 0); + lean_ctor_release(x_58, 1); + x_61 = x_58; } else { - lean_dec_ref(x_53); - x_57 = lean_box(0); + lean_dec_ref(x_58); + x_61 = lean_box(0); } -if (lean_is_scalar(x_57)) { - x_58 = lean_alloc_ctor(1, 1, 0); +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_59); +x_63 = lean_ctor_get(x_19, 2); +lean_inc(x_63); +lean_dec(x_19); +if (lean_obj_tag(x_63) == 0) +{ +lean_object* x_64; lean_object* x_65; +x_64 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_64, 0, x_21); +lean_ctor_set(x_64, 1, x_62); +lean_ctor_set(x_64, 2, x_21); +if (lean_is_scalar(x_61)) { + x_65 = lean_alloc_ctor(0, 2, 0); } else { - x_58 = x_57; -} -lean_ctor_set(x_58, 0, x_56); -x_59 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_59, 0, x_26); -lean_ctor_set(x_59, 1, x_27); -lean_ctor_set(x_59, 2, x_58); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_52); -x_6 = x_60; -goto block_18; -} + x_65 = x_61; } +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_60); +x_6 = x_65; +goto block_16; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_61 = lean_ctor_get(x_27, 0); -lean_inc(x_61); -lean_dec(x_27); -x_62 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_63 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_62, x_61, x_2); -x_64 = lean_ctor_get(x_63, 0); -lean_inc(x_64); -x_65 = lean_ctor_get(x_63, 1); -lean_inc(x_65); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_66 = lean_ctor_get(x_63, 0); +lean_inc(x_66); if (lean_is_exclusive(x_63)) { lean_ctor_release(x_63, 0); - lean_ctor_release(x_63, 1); - x_66 = x_63; + x_67 = x_63; } else { lean_dec_ref(x_63); - x_66 = lean_box(0); + x_67 = lean_box(0); } -x_67 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_67, 0, x_64); -x_68 = lean_ctor_get(x_24, 2); -lean_inc(x_68); -lean_dec(x_24); -if (lean_obj_tag(x_68) == 0) -{ -lean_object* x_69; lean_object* x_70; +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(1, 1, 0); +} else { + x_68 = x_67; +} +lean_ctor_set(x_68, 0, x_66); x_69 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_69, 0, x_26); -lean_ctor_set(x_69, 1, x_67); -lean_ctor_set(x_69, 2, x_26); -if (lean_is_scalar(x_66)) { +lean_ctor_set(x_69, 0, x_21); +lean_ctor_set(x_69, 1, x_62); +lean_ctor_set(x_69, 2, x_68); +if (lean_is_scalar(x_61)) { x_70 = lean_alloc_ctor(0, 2, 0); } else { - x_70 = x_66; + x_70 = x_61; } lean_ctor_set(x_70, 0, x_69); -lean_ctor_set(x_70, 1, x_65); +lean_ctor_set(x_70, 1, x_60); x_6 = x_70; -goto block_18; -} -else -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_71 = lean_ctor_get(x_68, 0); -lean_inc(x_71); -if (lean_is_exclusive(x_68)) { - lean_ctor_release(x_68, 0); - x_72 = x_68; -} else { - lean_dec_ref(x_68); - x_72 = lean_box(0); -} -if (lean_is_scalar(x_72)) { - x_73 = lean_alloc_ctor(1, 1, 0); -} else { - x_73 = x_72; -} -lean_ctor_set(x_73, 0, x_71); -x_74 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_74, 0, x_26); -lean_ctor_set(x_74, 1, x_67); -lean_ctor_set(x_74, 2, x_73); -if (lean_is_scalar(x_66)) { - x_75 = lean_alloc_ctor(0, 2, 0); -} else { - x_75 = x_66; -} -lean_ctor_set(x_75, 0, x_74); -lean_ctor_set(x_75, 1, x_65); -x_6 = x_75; -goto block_18; +goto block_16; } } } } else { -uint8_t x_76; -x_76 = !lean_is_exclusive(x_25); -if (x_76 == 0) +uint8_t x_71; +x_71 = !lean_is_exclusive(x_20); +if (x_71 == 0) { -lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; -x_77 = lean_ctor_get(x_25, 0); -x_78 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_79 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_78, x_77, x_2); -x_80 = !lean_is_exclusive(x_79); -if (x_80 == 0) +lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_72 = lean_ctor_get(x_20, 0); +x_73 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_74 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_73, x_72, x_2); +x_75 = !lean_is_exclusive(x_74); +if (x_75 == 0) { -lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_81 = lean_ctor_get(x_79, 0); -x_82 = lean_ctor_get(x_79, 1); -lean_ctor_set(x_25, 0, x_81); -x_83 = lean_ctor_get(x_24, 1); -lean_inc(x_83); -if (lean_obj_tag(x_83) == 0) +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_74, 0); +x_77 = lean_ctor_get(x_74, 1); +lean_ctor_set(x_20, 0, x_76); +x_78 = lean_ctor_get(x_19, 1); +lean_inc(x_78); +if (lean_obj_tag(x_78) == 0) { -lean_object* x_84; lean_object* x_85; -x_84 = lean_box(0); -x_85 = lean_ctor_get(x_24, 2); -lean_inc(x_85); -lean_dec(x_24); -if (lean_obj_tag(x_85) == 0) +lean_object* x_79; lean_object* x_80; +x_79 = lean_box(0); +x_80 = lean_ctor_get(x_19, 2); +lean_inc(x_80); +lean_dec(x_19); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_86; +lean_object* x_81; +x_81 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_81, 0, x_20); +lean_ctor_set(x_81, 1, x_79); +lean_ctor_set(x_81, 2, x_79); +lean_ctor_set(x_74, 0, x_81); +x_6 = x_74; +goto block_16; +} +else +{ +uint8_t x_82; +x_82 = !lean_is_exclusive(x_80); +if (x_82 == 0) +{ +lean_object* x_83; +x_83 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_83, 0, x_20); +lean_ctor_set(x_83, 1, x_79); +lean_ctor_set(x_83, 2, x_80); +lean_ctor_set(x_74, 0, x_83); +x_6 = x_74; +goto block_16; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_80, 0); +lean_inc(x_84); +lean_dec(x_80); +x_85 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_85, 0, x_84); x_86 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_86, 0, x_25); -lean_ctor_set(x_86, 1, x_84); -lean_ctor_set(x_86, 2, x_84); -lean_ctor_set(x_79, 0, x_86); -x_6 = x_79; -goto block_18; +lean_ctor_set(x_86, 0, x_20); +lean_ctor_set(x_86, 1, x_79); +lean_ctor_set(x_86, 2, x_85); +lean_ctor_set(x_74, 0, x_86); +x_6 = x_74; +goto block_16; +} +} } else { uint8_t x_87; -x_87 = !lean_is_exclusive(x_85); +lean_free_object(x_74); +x_87 = !lean_is_exclusive(x_78); if (x_87 == 0) { -lean_object* x_88; -x_88 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_88, 0, x_25); -lean_ctor_set(x_88, 1, x_84); -lean_ctor_set(x_88, 2, x_85); -lean_ctor_set(x_79, 0, x_88); -x_6 = x_79; -goto block_18; +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_78, 0); +x_89 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_73, x_88, x_77); +x_90 = !lean_is_exclusive(x_89); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; +x_91 = lean_ctor_get(x_89, 0); +lean_ctor_set(x_78, 0, x_91); +x_92 = lean_ctor_get(x_19, 2); +lean_inc(x_92); +lean_dec(x_19); +if (lean_obj_tag(x_92) == 0) +{ +lean_object* x_93; lean_object* x_94; +x_93 = lean_box(0); +x_94 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_94, 0, x_20); +lean_ctor_set(x_94, 1, x_78); +lean_ctor_set(x_94, 2, x_93); +lean_ctor_set(x_89, 0, x_94); +x_6 = x_89; +goto block_16; } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_85, 0); -lean_inc(x_89); -lean_dec(x_85); -x_90 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_90, 0, x_89); -x_91 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_91, 0, x_25); -lean_ctor_set(x_91, 1, x_84); -lean_ctor_set(x_91, 2, x_90); -lean_ctor_set(x_79, 0, x_91); -x_6 = x_79; -goto block_18; -} -} -} -else -{ -uint8_t x_92; -lean_free_object(x_79); -x_92 = !lean_is_exclusive(x_83); -if (x_92 == 0) -{ -lean_object* x_93; lean_object* x_94; uint8_t x_95; -x_93 = lean_ctor_get(x_83, 0); -x_94 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_78, x_93, x_82); -x_95 = !lean_is_exclusive(x_94); +uint8_t x_95; +x_95 = !lean_is_exclusive(x_92); if (x_95 == 0) { -lean_object* x_96; lean_object* x_97; -x_96 = lean_ctor_get(x_94, 0); -lean_ctor_set(x_83, 0, x_96); -x_97 = lean_ctor_get(x_24, 2); +lean_object* x_96; +x_96 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_96, 0, x_20); +lean_ctor_set(x_96, 1, x_78); +lean_ctor_set(x_96, 2, x_92); +lean_ctor_set(x_89, 0, x_96); +x_6 = x_89; +goto block_16; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_92, 0); lean_inc(x_97); -lean_dec(x_24); -if (lean_obj_tag(x_97) == 0) -{ -lean_object* x_98; lean_object* x_99; -x_98 = lean_box(0); +lean_dec(x_92); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); x_99 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_99, 0, x_25); -lean_ctor_set(x_99, 1, x_83); +lean_ctor_set(x_99, 0, x_20); +lean_ctor_set(x_99, 1, x_78); lean_ctor_set(x_99, 2, x_98); -lean_ctor_set(x_94, 0, x_99); -x_6 = x_94; -goto block_18; +lean_ctor_set(x_89, 0, x_99); +x_6 = x_89; +goto block_16; +} +} } else { -uint8_t x_100; -x_100 = !lean_is_exclusive(x_97); -if (x_100 == 0) -{ -lean_object* x_101; -x_101 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_101, 0, x_25); -lean_ctor_set(x_101, 1, x_83); -lean_ctor_set(x_101, 2, x_97); -lean_ctor_set(x_94, 0, x_101); -x_6 = x_94; -goto block_18; -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_102 = lean_ctor_get(x_97, 0); +lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_100 = lean_ctor_get(x_89, 0); +x_101 = lean_ctor_get(x_89, 1); +lean_inc(x_101); +lean_inc(x_100); +lean_dec(x_89); +lean_ctor_set(x_78, 0, x_100); +x_102 = lean_ctor_get(x_19, 2); lean_inc(x_102); -lean_dec(x_97); -x_103 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_103, 0, x_102); +lean_dec(x_19); +if (lean_obj_tag(x_102) == 0) +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_103 = lean_box(0); x_104 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_104, 0, x_25); -lean_ctor_set(x_104, 1, x_83); +lean_ctor_set(x_104, 0, x_20); +lean_ctor_set(x_104, 1, x_78); lean_ctor_set(x_104, 2, x_103); -lean_ctor_set(x_94, 0, x_104); -x_6 = x_94; -goto block_18; -} -} +x_105 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set(x_105, 1, x_101); +x_6 = x_105; +goto block_16; } else { -lean_object* x_105; lean_object* x_106; lean_object* x_107; -x_105 = lean_ctor_get(x_94, 0); -x_106 = lean_ctor_get(x_94, 1); +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_106 = lean_ctor_get(x_102, 0); lean_inc(x_106); -lean_inc(x_105); -lean_dec(x_94); -lean_ctor_set(x_83, 0, x_105); -x_107 = lean_ctor_get(x_24, 2); -lean_inc(x_107); -lean_dec(x_24); -if (lean_obj_tag(x_107) == 0) -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; -x_108 = lean_box(0); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + x_107 = x_102; +} else { + lean_dec_ref(x_102); + x_107 = lean_box(0); +} +if (lean_is_scalar(x_107)) { + x_108 = lean_alloc_ctor(1, 1, 0); +} else { + x_108 = x_107; +} +lean_ctor_set(x_108, 0, x_106); x_109 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_109, 0, x_25); -lean_ctor_set(x_109, 1, x_83); +lean_ctor_set(x_109, 0, x_20); +lean_ctor_set(x_109, 1, x_78); lean_ctor_set(x_109, 2, x_108); x_110 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_110, 0, x_109); -lean_ctor_set(x_110, 1, x_106); +lean_ctor_set(x_110, 1, x_101); x_6 = x_110; -goto block_18; +goto block_16; +} +} } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_111 = lean_ctor_get(x_107, 0); +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_111 = lean_ctor_get(x_78, 0); lean_inc(x_111); -if (lean_is_exclusive(x_107)) { - lean_ctor_release(x_107, 0); - x_112 = x_107; +lean_dec(x_78); +x_112 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_73, x_111, x_77); +x_113 = lean_ctor_get(x_112, 0); +lean_inc(x_113); +x_114 = lean_ctor_get(x_112, 1); +lean_inc(x_114); +if (lean_is_exclusive(x_112)) { + lean_ctor_release(x_112, 0); + lean_ctor_release(x_112, 1); + x_115 = x_112; } else { - lean_dec_ref(x_107); - x_112 = lean_box(0); + lean_dec_ref(x_112); + x_115 = lean_box(0); } -if (lean_is_scalar(x_112)) { - x_113 = lean_alloc_ctor(1, 1, 0); +x_116 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_116, 0, x_113); +x_117 = lean_ctor_get(x_19, 2); +lean_inc(x_117); +lean_dec(x_19); +if (lean_obj_tag(x_117) == 0) +{ +lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_118 = lean_box(0); +x_119 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_119, 0, x_20); +lean_ctor_set(x_119, 1, x_116); +lean_ctor_set(x_119, 2, x_118); +if (lean_is_scalar(x_115)) { + x_120 = lean_alloc_ctor(0, 2, 0); } else { - x_113 = x_112; -} -lean_ctor_set(x_113, 0, x_111); -x_114 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_114, 0, x_25); -lean_ctor_set(x_114, 1, x_83); -lean_ctor_set(x_114, 2, x_113); -x_115 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_115, 0, x_114); -lean_ctor_set(x_115, 1, x_106); -x_6 = x_115; -goto block_18; -} + x_120 = x_115; } +lean_ctor_set(x_120, 0, x_119); +lean_ctor_set(x_120, 1, x_114); +x_6 = x_120; +goto block_16; } else { -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_116 = lean_ctor_get(x_83, 0); -lean_inc(x_116); -lean_dec(x_83); -x_117 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_78, x_116, x_82); -x_118 = lean_ctor_get(x_117, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_117, 1); -lean_inc(x_119); +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_121 = lean_ctor_get(x_117, 0); +lean_inc(x_121); if (lean_is_exclusive(x_117)) { lean_ctor_release(x_117, 0); - lean_ctor_release(x_117, 1); - x_120 = x_117; + x_122 = x_117; } else { lean_dec_ref(x_117); - x_120 = lean_box(0); + x_122 = lean_box(0); } -x_121 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_121, 0, x_118); -x_122 = lean_ctor_get(x_24, 2); -lean_inc(x_122); -lean_dec(x_24); -if (lean_obj_tag(x_122) == 0) -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; -x_123 = lean_box(0); +if (lean_is_scalar(x_122)) { + x_123 = lean_alloc_ctor(1, 1, 0); +} else { + x_123 = x_122; +} +lean_ctor_set(x_123, 0, x_121); x_124 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_124, 0, x_25); -lean_ctor_set(x_124, 1, x_121); +lean_ctor_set(x_124, 0, x_20); +lean_ctor_set(x_124, 1, x_116); lean_ctor_set(x_124, 2, x_123); -if (lean_is_scalar(x_120)) { +if (lean_is_scalar(x_115)) { x_125 = lean_alloc_ctor(0, 2, 0); } else { - x_125 = x_120; + x_125 = x_115; } lean_ctor_set(x_125, 0, x_124); -lean_ctor_set(x_125, 1, x_119); +lean_ctor_set(x_125, 1, x_114); x_6 = x_125; -goto block_18; +goto block_16; +} +} +} } else { -lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_126 = lean_ctor_get(x_122, 0); +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_ctor_get(x_74, 0); +x_127 = lean_ctor_get(x_74, 1); +lean_inc(x_127); lean_inc(x_126); -if (lean_is_exclusive(x_122)) { - lean_ctor_release(x_122, 0); - x_127 = x_122; -} else { - lean_dec_ref(x_122); - x_127 = lean_box(0); -} -if (lean_is_scalar(x_127)) { - x_128 = lean_alloc_ctor(1, 1, 0); -} else { - x_128 = x_127; -} -lean_ctor_set(x_128, 0, x_126); -x_129 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_129, 0, x_25); -lean_ctor_set(x_129, 1, x_121); -lean_ctor_set(x_129, 2, x_128); -if (lean_is_scalar(x_120)) { - x_130 = lean_alloc_ctor(0, 2, 0); -} else { - x_130 = x_120; -} -lean_ctor_set(x_130, 0, x_129); -lean_ctor_set(x_130, 1, x_119); -x_6 = x_130; -goto block_18; -} -} -} +lean_dec(x_74); +lean_ctor_set(x_20, 0, x_126); +x_128 = lean_ctor_get(x_19, 1); +lean_inc(x_128); +if (lean_obj_tag(x_128) == 0) +{ +lean_object* x_129; lean_object* x_130; +x_129 = lean_box(0); +x_130 = lean_ctor_get(x_19, 2); +lean_inc(x_130); +lean_dec(x_19); +if (lean_obj_tag(x_130) == 0) +{ +lean_object* x_131; lean_object* x_132; +x_131 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_131, 0, x_20); +lean_ctor_set(x_131, 1, x_129); +lean_ctor_set(x_131, 2, x_129); +x_132 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_132, 0, x_131); +lean_ctor_set(x_132, 1, x_127); +x_6 = x_132; +goto block_16; } else { -lean_object* x_131; lean_object* x_132; lean_object* x_133; -x_131 = lean_ctor_get(x_79, 0); -x_132 = lean_ctor_get(x_79, 1); -lean_inc(x_132); -lean_inc(x_131); -lean_dec(x_79); -lean_ctor_set(x_25, 0, x_131); -x_133 = lean_ctor_get(x_24, 1); +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_133 = lean_ctor_get(x_130, 0); lean_inc(x_133); -if (lean_obj_tag(x_133) == 0) -{ -lean_object* x_134; lean_object* x_135; -x_134 = lean_box(0); -x_135 = lean_ctor_get(x_24, 2); -lean_inc(x_135); -lean_dec(x_24); -if (lean_obj_tag(x_135) == 0) -{ -lean_object* x_136; lean_object* x_137; +if (lean_is_exclusive(x_130)) { + lean_ctor_release(x_130, 0); + x_134 = x_130; +} else { + lean_dec_ref(x_130); + x_134 = lean_box(0); +} +if (lean_is_scalar(x_134)) { + x_135 = lean_alloc_ctor(1, 1, 0); +} else { + x_135 = x_134; +} +lean_ctor_set(x_135, 0, x_133); x_136 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_136, 0, x_25); -lean_ctor_set(x_136, 1, x_134); -lean_ctor_set(x_136, 2, x_134); +lean_ctor_set(x_136, 0, x_20); +lean_ctor_set(x_136, 1, x_129); +lean_ctor_set(x_136, 2, x_135); x_137 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_137, 0, x_136); -lean_ctor_set(x_137, 1, x_132); +lean_ctor_set(x_137, 1, x_127); x_6 = x_137; -goto block_18; +goto block_16; +} } else { -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -x_138 = lean_ctor_get(x_135, 0); +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; +x_138 = lean_ctor_get(x_128, 0); lean_inc(x_138); -if (lean_is_exclusive(x_135)) { - lean_ctor_release(x_135, 0); - x_139 = x_135; +if (lean_is_exclusive(x_128)) { + lean_ctor_release(x_128, 0); + x_139 = x_128; } else { - lean_dec_ref(x_135); + lean_dec_ref(x_128); x_139 = lean_box(0); } -if (lean_is_scalar(x_139)) { - x_140 = lean_alloc_ctor(1, 1, 0); +x_140 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_73, x_138, x_127); +x_141 = lean_ctor_get(x_140, 0); +lean_inc(x_141); +x_142 = lean_ctor_get(x_140, 1); +lean_inc(x_142); +if (lean_is_exclusive(x_140)) { + lean_ctor_release(x_140, 0); + lean_ctor_release(x_140, 1); + x_143 = x_140; } else { - x_140 = x_139; + lean_dec_ref(x_140); + x_143 = lean_box(0); } -lean_ctor_set(x_140, 0, x_138); -x_141 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_141, 0, x_25); -lean_ctor_set(x_141, 1, x_134); -lean_ctor_set(x_141, 2, x_140); -x_142 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_142, 0, x_141); -lean_ctor_set(x_142, 1, x_132); -x_6 = x_142; -goto block_18; +if (lean_is_scalar(x_139)) { + x_144 = lean_alloc_ctor(1, 1, 0); +} else { + x_144 = x_139; } +lean_ctor_set(x_144, 0, x_141); +x_145 = lean_ctor_get(x_19, 2); +lean_inc(x_145); +lean_dec(x_19); +if (lean_obj_tag(x_145) == 0) +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; +x_146 = lean_box(0); +x_147 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_147, 0, x_20); +lean_ctor_set(x_147, 1, x_144); +lean_ctor_set(x_147, 2, x_146); +if (lean_is_scalar(x_143)) { + x_148 = lean_alloc_ctor(0, 2, 0); +} else { + x_148 = x_143; +} +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_142); +x_6 = x_148; +goto block_16; } else { -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; -x_143 = lean_ctor_get(x_133, 0); -lean_inc(x_143); -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - x_144 = x_133; -} else { - lean_dec_ref(x_133); - x_144 = lean_box(0); -} -x_145 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_78, x_143, x_132); -x_146 = lean_ctor_get(x_145, 0); -lean_inc(x_146); -x_147 = lean_ctor_get(x_145, 1); -lean_inc(x_147); +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; +x_149 = lean_ctor_get(x_145, 0); +lean_inc(x_149); if (lean_is_exclusive(x_145)) { lean_ctor_release(x_145, 0); - lean_ctor_release(x_145, 1); - x_148 = x_145; + x_150 = x_145; } else { lean_dec_ref(x_145); - x_148 = lean_box(0); + x_150 = lean_box(0); } -if (lean_is_scalar(x_144)) { - x_149 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_150)) { + x_151 = lean_alloc_ctor(1, 1, 0); } else { - x_149 = x_144; + x_151 = x_150; } -lean_ctor_set(x_149, 0, x_146); -x_150 = lean_ctor_get(x_24, 2); -lean_inc(x_150); -lean_dec(x_24); -if (lean_obj_tag(x_150) == 0) -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; -x_151 = lean_box(0); +lean_ctor_set(x_151, 0, x_149); x_152 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_152, 0, x_25); -lean_ctor_set(x_152, 1, x_149); +lean_ctor_set(x_152, 0, x_20); +lean_ctor_set(x_152, 1, x_144); lean_ctor_set(x_152, 2, x_151); -if (lean_is_scalar(x_148)) { +if (lean_is_scalar(x_143)) { x_153 = lean_alloc_ctor(0, 2, 0); } else { - x_153 = x_148; + x_153 = x_143; } lean_ctor_set(x_153, 0, x_152); -lean_ctor_set(x_153, 1, x_147); +lean_ctor_set(x_153, 1, x_142); x_6 = x_153; -goto block_18; +goto block_16; +} +} +} } else { -lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_154 = lean_ctor_get(x_150, 0); +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_154 = lean_ctor_get(x_20, 0); lean_inc(x_154); -if (lean_is_exclusive(x_150)) { - lean_ctor_release(x_150, 0); - x_155 = x_150; +lean_dec(x_20); +x_155 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_156 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_155, x_154, x_2); +x_157 = lean_ctor_get(x_156, 0); +lean_inc(x_157); +x_158 = lean_ctor_get(x_156, 1); +lean_inc(x_158); +if (lean_is_exclusive(x_156)) { + lean_ctor_release(x_156, 0); + lean_ctor_release(x_156, 1); + x_159 = x_156; } else { - lean_dec_ref(x_150); - x_155 = lean_box(0); + lean_dec_ref(x_156); + x_159 = lean_box(0); } -if (lean_is_scalar(x_155)) { - x_156 = lean_alloc_ctor(1, 1, 0); +x_160 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_160, 0, x_157); +x_161 = lean_ctor_get(x_19, 1); +lean_inc(x_161); +if (lean_obj_tag(x_161) == 0) +{ +lean_object* x_162; lean_object* x_163; +x_162 = lean_box(0); +x_163 = lean_ctor_get(x_19, 2); +lean_inc(x_163); +lean_dec(x_19); +if (lean_obj_tag(x_163) == 0) +{ +lean_object* x_164; lean_object* x_165; +x_164 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_164, 0, x_160); +lean_ctor_set(x_164, 1, x_162); +lean_ctor_set(x_164, 2, x_162); +if (lean_is_scalar(x_159)) { + x_165 = lean_alloc_ctor(0, 2, 0); } else { - x_156 = x_155; -} -lean_ctor_set(x_156, 0, x_154); -x_157 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_157, 0, x_25); -lean_ctor_set(x_157, 1, x_149); -lean_ctor_set(x_157, 2, x_156); -if (lean_is_scalar(x_148)) { - x_158 = lean_alloc_ctor(0, 2, 0); -} else { - x_158 = x_148; -} -lean_ctor_set(x_158, 0, x_157); -lean_ctor_set(x_158, 1, x_147); -x_6 = x_158; -goto block_18; -} -} + x_165 = x_159; } +lean_ctor_set(x_165, 0, x_164); +lean_ctor_set(x_165, 1, x_158); +x_6 = x_165; +goto block_16; } else { -lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; -x_159 = lean_ctor_get(x_25, 0); -lean_inc(x_159); -lean_dec(x_25); -x_160 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_161 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_160, x_159, x_2); -x_162 = lean_ctor_get(x_161, 0); -lean_inc(x_162); -x_163 = lean_ctor_get(x_161, 1); -lean_inc(x_163); -if (lean_is_exclusive(x_161)) { - lean_ctor_release(x_161, 0); - lean_ctor_release(x_161, 1); - x_164 = x_161; -} else { - lean_dec_ref(x_161); - x_164 = lean_box(0); -} -x_165 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_165, 0, x_162); -x_166 = lean_ctor_get(x_24, 1); +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; +x_166 = lean_ctor_get(x_163, 0); lean_inc(x_166); -if (lean_obj_tag(x_166) == 0) -{ -lean_object* x_167; lean_object* x_168; -x_167 = lean_box(0); -x_168 = lean_ctor_get(x_24, 2); -lean_inc(x_168); -lean_dec(x_24); -if (lean_obj_tag(x_168) == 0) -{ -lean_object* x_169; lean_object* x_170; +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + x_167 = x_163; +} else { + lean_dec_ref(x_163); + x_167 = lean_box(0); +} +if (lean_is_scalar(x_167)) { + x_168 = lean_alloc_ctor(1, 1, 0); +} else { + x_168 = x_167; +} +lean_ctor_set(x_168, 0, x_166); x_169 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_169, 0, x_165); -lean_ctor_set(x_169, 1, x_167); -lean_ctor_set(x_169, 2, x_167); -if (lean_is_scalar(x_164)) { +lean_ctor_set(x_169, 0, x_160); +lean_ctor_set(x_169, 1, x_162); +lean_ctor_set(x_169, 2, x_168); +if (lean_is_scalar(x_159)) { x_170 = lean_alloc_ctor(0, 2, 0); } else { - x_170 = x_164; + x_170 = x_159; } lean_ctor_set(x_170, 0, x_169); -lean_ctor_set(x_170, 1, x_163); +lean_ctor_set(x_170, 1, x_158); x_6 = x_170; -goto block_18; +goto block_16; +} } else { -lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; -x_171 = lean_ctor_get(x_168, 0); +lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; +lean_dec(x_159); +x_171 = lean_ctor_get(x_161, 0); lean_inc(x_171); -if (lean_is_exclusive(x_168)) { - lean_ctor_release(x_168, 0); - x_172 = x_168; +if (lean_is_exclusive(x_161)) { + lean_ctor_release(x_161, 0); + x_172 = x_161; } else { - lean_dec_ref(x_168); + lean_dec_ref(x_161); x_172 = lean_box(0); } +x_173 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_155, x_171, x_158); +x_174 = lean_ctor_get(x_173, 0); +lean_inc(x_174); +x_175 = lean_ctor_get(x_173, 1); +lean_inc(x_175); +if (lean_is_exclusive(x_173)) { + lean_ctor_release(x_173, 0); + lean_ctor_release(x_173, 1); + x_176 = x_173; +} else { + lean_dec_ref(x_173); + x_176 = lean_box(0); +} if (lean_is_scalar(x_172)) { - x_173 = lean_alloc_ctor(1, 1, 0); + x_177 = lean_alloc_ctor(1, 1, 0); } else { - x_173 = x_172; + x_177 = x_172; } -lean_ctor_set(x_173, 0, x_171); -x_174 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_174, 0, x_165); -lean_ctor_set(x_174, 1, x_167); -lean_ctor_set(x_174, 2, x_173); -if (lean_is_scalar(x_164)) { - x_175 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_177, 0, x_174); +x_178 = lean_ctor_get(x_19, 2); +lean_inc(x_178); +lean_dec(x_19); +if (lean_obj_tag(x_178) == 0) +{ +lean_object* x_179; lean_object* x_180; lean_object* x_181; +x_179 = lean_box(0); +x_180 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_180, 0, x_160); +lean_ctor_set(x_180, 1, x_177); +lean_ctor_set(x_180, 2, x_179); +if (lean_is_scalar(x_176)) { + x_181 = lean_alloc_ctor(0, 2, 0); } else { - x_175 = x_164; -} -lean_ctor_set(x_175, 0, x_174); -lean_ctor_set(x_175, 1, x_163); -x_6 = x_175; -goto block_18; + x_181 = x_176; } +lean_ctor_set(x_181, 0, x_180); +lean_ctor_set(x_181, 1, x_175); +x_6 = x_181; +goto block_16; } else { -lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; -lean_dec(x_164); -x_176 = lean_ctor_get(x_166, 0); -lean_inc(x_176); -if (lean_is_exclusive(x_166)) { - lean_ctor_release(x_166, 0); - x_177 = x_166; -} else { - lean_dec_ref(x_166); - x_177 = lean_box(0); -} -x_178 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_160, x_176, x_163); -x_179 = lean_ctor_get(x_178, 0); -lean_inc(x_179); -x_180 = lean_ctor_get(x_178, 1); -lean_inc(x_180); +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; +x_182 = lean_ctor_get(x_178, 0); +lean_inc(x_182); if (lean_is_exclusive(x_178)) { lean_ctor_release(x_178, 0); - lean_ctor_release(x_178, 1); - x_181 = x_178; + x_183 = x_178; } else { lean_dec_ref(x_178); - x_181 = lean_box(0); + x_183 = lean_box(0); } -if (lean_is_scalar(x_177)) { - x_182 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_183)) { + x_184 = lean_alloc_ctor(1, 1, 0); } else { - x_182 = x_177; + x_184 = x_183; } -lean_ctor_set(x_182, 0, x_179); -x_183 = lean_ctor_get(x_24, 2); -lean_inc(x_183); -lean_dec(x_24); -if (lean_obj_tag(x_183) == 0) -{ -lean_object* x_184; lean_object* x_185; lean_object* x_186; -x_184 = lean_box(0); +lean_ctor_set(x_184, 0, x_182); x_185 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_185, 0, x_165); -lean_ctor_set(x_185, 1, x_182); +lean_ctor_set(x_185, 0, x_160); +lean_ctor_set(x_185, 1, x_177); lean_ctor_set(x_185, 2, x_184); -if (lean_is_scalar(x_181)) { +if (lean_is_scalar(x_176)) { x_186 = lean_alloc_ctor(0, 2, 0); } else { - x_186 = x_181; + x_186 = x_176; } lean_ctor_set(x_186, 0, x_185); -lean_ctor_set(x_186, 1, x_180); +lean_ctor_set(x_186, 1, x_175); x_6 = x_186; -goto block_18; -} -else -{ -lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; -x_187 = lean_ctor_get(x_183, 0); -lean_inc(x_187); -if (lean_is_exclusive(x_183)) { - lean_ctor_release(x_183, 0); - x_188 = x_183; -} else { - lean_dec_ref(x_183); - x_188 = lean_box(0); -} -if (lean_is_scalar(x_188)) { - x_189 = lean_alloc_ctor(1, 1, 0); -} else { - x_189 = x_188; -} -lean_ctor_set(x_189, 0, x_187); -x_190 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_190, 0, x_165); -lean_ctor_set(x_190, 1, x_182); -lean_ctor_set(x_190, 2, x_189); -if (lean_is_scalar(x_181)) { - x_191 = lean_alloc_ctor(0, 2, 0); -} else { - x_191 = x_181; -} -lean_ctor_set(x_191, 0, x_190); -lean_ctor_set(x_191, 1, x_180); -x_6 = x_191; -goto block_18; +goto block_16; } } } } } -block_18: +block_16: { lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; x_7 = lean_ctor_get(x_6, 0); @@ -7272,28 +7113,24 @@ x_9 = lean_st_ref_set(x_1, x_8, x_5); x_10 = !lean_is_exclusive(x_9); if (x_10 == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_11; lean_object* x_12; x_11 = lean_ctor_get(x_9, 0); lean_dec(x_11); x_12 = l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433_(x_7); -x_13 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_9, 0, x_13); +lean_ctor_set(x_9, 0, x_12); return x_9; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_9, 1); -lean_inc(x_14); +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_9, 1); +lean_inc(x_13); lean_dec(x_9); -x_15 = l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433_(x_7); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_15); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_14); -return x_17; +x_14 = l___private_Lean_Server_FileWorker_WidgetRequests_0__Lean_Widget_Lean_Widget_InfoPopup_toJsonRpcEncodingPacket____x40_Lean_Server_FileWorker_WidgetRequests___hyg_433_(x_7); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; } } } @@ -7312,15 +7149,15 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_9 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; -x_10 = lean_alloc_ctor(0, 2, 0); +x_9 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; +x_10 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_6); return x_10; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_11 = lean_ctor_get(x_8, 0); lean_inc(x_11); lean_dec(x_8); @@ -7332,7 +7169,7 @@ lean_inc(x_14); lean_dec(x_12); lean_inc(x_4); x_15 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__2(x_4); -x_16 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 3, 1); +x_16 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3___boxed), 3, 1); lean_closure_set(x_16, 0, x_15); lean_inc(x_13); x_17 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__1___boxed), 6, 3); @@ -7349,26 +7186,20 @@ lean_inc(x_20); x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); lean_dec(x_19); -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -lean_dec(x_20); -x_23 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 4, 1); -lean_closure_set(x_23, 0, x_2); +x_22 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2), 4, 1); +lean_closure_set(x_22, 0, x_2); lean_inc(x_5); -x_24 = l_Lean_Server_RequestM_bindTask___rarg(x_22, x_23, x_5, x_21); -x_25 = lean_ctor_get(x_24, 0); +x_23 = l_Lean_Server_RequestM_bindTask___rarg(x_20, x_22, x_5, x_21); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_ctor_get(x_25, 0); -lean_inc(x_27); -lean_dec(x_25); -x_28 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___boxed), 5, 2); -lean_closure_set(x_28, 0, x_11); -lean_closure_set(x_28, 1, x_13); -x_29 = l_Lean_Server_RequestM_mapTask___rarg(x_27, x_28, x_5, x_26); -return x_29; +lean_dec(x_23); +x_26 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__1___lambda__2___boxed), 5, 2); +lean_closure_set(x_26, 0, x_11); +lean_closure_set(x_26, 1, x_13); +x_27 = l_Lean_Server_RequestM_mapTask___rarg(x_24, x_26, x_5, x_25); +return x_27; } } } @@ -7425,7 +7256,7 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_1); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_8, x_1); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_8, x_1); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; @@ -7440,10 +7271,10 @@ uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_obje lean_dec(x_2); x_13 = 1; x_14 = l_Lean_Name_toString(x_1, x_13); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_16 = lean_string_append(x_15, x_14); lean_dec(x_14); -x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -7461,7 +7292,7 @@ lean_inc(x_21); lean_inc(x_20); lean_dec(x_6); lean_inc(x_1); -x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_20, x_1); +x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_20, x_1); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; @@ -7475,10 +7306,10 @@ uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_obje lean_dec(x_2); x_25 = 1; x_26 = l_Lean_Name_toString(x_1, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_30 = lean_string_append(x_28, x_29); x_31 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_31, 0, x_30); @@ -7514,7 +7345,7 @@ x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); x_9 = 1; x_10 = l_Lean_Name_toString(x_1, x_9); -x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -7533,7 +7364,7 @@ lean_inc(x_16); lean_dec(x_4); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -7911,49 +7742,55 @@ uint8_t x_7; x_7 = !lean_is_exclusive(x_6); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; +return x_6; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; x_8 = lean_ctor_get(x_6, 0); -x_9 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_9, 0, x_8); -lean_ctor_set(x_6, 0, x_9); -return x_6; -} -else -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_6, 0); -x_11 = lean_ctor_get(x_6, 1); -lean_inc(x_11); -lean_inc(x_10); +x_9 = lean_ctor_get(x_6, 1); +lean_inc(x_9); +lean_inc(x_8); lean_dec(x_6); -x_12 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_12, 0, x_10); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_11); -return x_13; +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +return x_10; } } else { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_6); -if (x_14 == 0) +uint8_t x_11; +x_11 = !lean_is_exclusive(x_6); +if (x_11 == 0) { +lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_6, 0); +x_13 = lean_io_error_to_string(x_12); +x_14 = 4; +x_15 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set_uint8(x_15, sizeof(void*)*1, x_14); +lean_ctor_set(x_6, 0, x_15); return x_6; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_6, 0); -x_16 = lean_ctor_get(x_6, 1); +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; +x_16 = lean_ctor_get(x_6, 0); +x_17 = lean_ctor_get(x_6, 1); +lean_inc(x_17); lean_inc(x_16); -lean_inc(x_15); lean_dec(x_6); -x_17 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_17, 0, x_15); -lean_ctor_set(x_17, 1, x_16); -return x_17; +x_18 = lean_io_error_to_string(x_16); +x_19 = 4; +x_20 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_19); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_17); +return x_21; } } } @@ -8014,13 +7851,23 @@ x_4 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_S return x_4; } } -LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4___boxed(lean_object* x_1, lean_object* x_2) { _start: { size_t x_3; lean_object* x_4; x_3 = lean_unbox_usize(x_1); lean_dec(x_1); -x_4 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__3(x_3, x_2); +x_4 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_decodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_613____spec__4(x_3, x_2); return x_4; } } @@ -8112,7 +7959,7 @@ lean_dec(x_13); x_15 = x_12; x_16 = lean_box_usize(x_14); x_17 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed__const__1; -x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed), 4, 3); +x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed), 4, 3); lean_closure_set(x_18, 0, x_16); lean_closure_set(x_18, 1, x_17); lean_closure_set(x_18, 2, x_15); @@ -8125,8 +7972,8 @@ lean_inc(x_22); lean_dec(x_20); x_23 = lean_ctor_get(x_11, 1); lean_inc(x_23); -x_24 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_25 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_24, x_23, x_22); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_25 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_24, x_23, x_22); x_26 = lean_ctor_get(x_11, 2); lean_inc(x_26); lean_dec(x_11); @@ -8205,23 +8052,11 @@ goto _start; LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; -x_4 = lean_alloc_ctor(1, 1, 0); +lean_object* x_4; +x_4 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_4, 0, x_1); -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_4); -lean_ctor_set(x_5, 1, x_3); -return x_5; -} -} -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; +lean_ctor_set(x_4, 1, x_3); +return x_4; } } static lean_object* _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1() { @@ -8238,192 +8073,94 @@ _start: { if (lean_obj_tag(x_3) == 0) { -uint8_t x_6; +lean_object* x_6; lean_object* x_7; lean_dec(x_2); -x_6 = !lean_is_exclusive(x_3); -if (x_6 == 0) -{ -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_3); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +lean_dec(x_3); +x_7 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); return x_7; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_8; x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); lean_dec(x_3); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_5); -return x_10; +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_st_ref_set(x_1, x_2, x_5); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_dec(x_11); +x_12 = lean_box(0); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_9, 1); +lean_inc(x_13); +lean_dec(x_9); +x_14 = lean_box(0); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; } } else { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_3); -if (x_11 == 0) +lean_object* x_16; lean_object* x_17; size_t x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_16 = lean_ctor_get(x_8, 0); +lean_inc(x_16); +lean_dec(x_8); +x_17 = lean_array_get_size(x_16); +x_18 = lean_usize_of_nat(x_17); +lean_dec(x_17); +x_19 = x_16; +x_20 = lean_box_usize(x_18); +x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1; +x_22 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed), 4, 3); +lean_closure_set(x_22, 0, x_20); +lean_closure_set(x_22, 1, x_21); +lean_closure_set(x_22, 2, x_19); +x_23 = x_22; +x_24 = lean_apply_1(x_23, x_2); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = lean_st_ref_set(x_1, x_26, x_5); +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) { -lean_object* x_12; -x_12 = lean_ctor_get(x_3, 0); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_free_object(x_3); -x_13 = lean_st_ref_set(x_1, x_2, x_5); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_dec(x_15); -x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -lean_ctor_set(x_13, 0, x_16); -return x_13; +lean_object* x_29; lean_object* x_30; +x_29 = lean_ctor_get(x_27, 0); +lean_dec(x_29); +x_30 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(x_25); +lean_ctor_set(x_27, 0, x_30); +return x_27; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_13, 1); -lean_inc(x_17); -lean_dec(x_13); -x_18 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; size_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_20 = lean_ctor_get(x_12, 0); -lean_inc(x_20); -lean_dec(x_12); -x_21 = lean_array_get_size(x_20); -x_22 = lean_usize_of_nat(x_21); -lean_dec(x_21); -x_23 = x_20; -x_24 = lean_box_usize(x_22); -x_25 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1; -x_26 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed), 4, 3); -lean_closure_set(x_26, 0, x_24); -lean_closure_set(x_26, 1, x_25); -lean_closure_set(x_26, 2, x_23); -x_27 = x_26; -x_28 = lean_apply_1(x_27, x_2); -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -lean_dec(x_28); -x_31 = lean_st_ref_set(x_1, x_30, x_5); -x_32 = !lean_is_exclusive(x_31); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; -x_33 = lean_ctor_get(x_31, 0); -lean_dec(x_33); -x_34 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(x_29); -lean_ctor_set(x_3, 0, x_34); -lean_ctor_set(x_31, 0, x_3); -return x_31; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_31, 1); -lean_inc(x_35); -lean_dec(x_31); -x_36 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(x_29); -lean_ctor_set(x_3, 0, x_36); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_3); -lean_ctor_set(x_37, 1, x_35); -return x_37; -} -} -} -else -{ -lean_object* x_38; -x_38 = lean_ctor_get(x_3, 0); -lean_inc(x_38); -lean_dec(x_3); -if (lean_obj_tag(x_38) == 0) -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_st_ref_set(x_1, x_2, x_5); -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - x_41 = x_39; -} else { - lean_dec_ref(x_39); - x_41 = lean_box(0); -} -x_42 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -if (lean_is_scalar(x_41)) { - x_43 = lean_alloc_ctor(0, 2, 0); -} else { - x_43 = x_41; -} -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_40); -return x_43; -} -else -{ -lean_object* x_44; lean_object* x_45; size_t x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_44 = lean_ctor_get(x_38, 0); -lean_inc(x_44); -lean_dec(x_38); -x_45 = lean_array_get_size(x_44); -x_46 = lean_usize_of_nat(x_45); -lean_dec(x_45); -x_47 = x_44; -x_48 = lean_box_usize(x_46); -x_49 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1; -x_50 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed), 4, 3); -lean_closure_set(x_50, 0, x_48); -lean_closure_set(x_50, 1, x_49); -lean_closure_set(x_50, 2, x_47); -x_51 = x_50; -x_52 = lean_apply_1(x_51, x_2); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -lean_dec(x_52); -x_55 = lean_st_ref_set(x_1, x_54, x_5); -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -if (lean_is_exclusive(x_55)) { - lean_ctor_release(x_55, 0); - lean_ctor_release(x_55, 1); - x_57 = x_55; -} else { - lean_dec_ref(x_55); - x_57 = lean_box(0); -} -x_58 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(x_53); -x_59 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_59, 0, x_58); -if (lean_is_scalar(x_57)) { - x_60 = lean_alloc_ctor(0, 2, 0); -} else { - x_60 = x_57; -} -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_56); -return x_60; +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_27, 1); +lean_inc(x_31); +lean_dec(x_27); +x_32 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveGoals_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1325_(x_25); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_31); +return x_33; } } } @@ -8450,15 +8187,15 @@ lean_object* x_8; lean_object* x_9; lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; -x_9 = lean_alloc_ctor(0, 2, 0); +x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; +x_9 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_5); return x_9; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_10 = lean_ctor_get(x_7, 0); lean_inc(x_10); lean_dec(x_7); @@ -8468,8 +8205,8 @@ lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); -x_14 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__20(x_3); -x_15 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 3, 1); +x_14 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__28(x_3); +x_15 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__29___boxed), 3, 1); lean_closure_set(x_15, 0, x_14); x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1; x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg), 4, 2); @@ -8482,26 +8219,20 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -lean_dec(x_19); -x_22 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 4, 1); -lean_closure_set(x_22, 0, x_1); +x_21 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2), 4, 1); +lean_closure_set(x_21, 0, x_1); lean_inc(x_4); -x_23 = l_Lean_Server_RequestM_bindTask___rarg(x_21, x_22, x_4, x_20); -x_24 = lean_ctor_get(x_23, 0); +x_22 = l_Lean_Server_RequestM_bindTask___rarg(x_19, x_21, x_4, x_20); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed), 5, 2); -lean_closure_set(x_27, 0, x_10); -lean_closure_set(x_27, 1, x_12); -x_28 = l_Lean_Server_RequestM_mapTask___rarg(x_26, x_27, x_4, x_25); -return x_28; +lean_dec(x_22); +x_25 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed), 5, 2); +lean_closure_set(x_25, 0, x_10); +lean_closure_set(x_25, 1, x_12); +x_26 = l_Lean_Server_RequestM_mapTask___rarg(x_23, x_25, x_4, x_24); +return x_26; } } } @@ -8556,7 +8287,7 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; @@ -8571,10 +8302,10 @@ uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_obje lean_dec(x_1); x_13 = 1; x_14 = l_Lean_Name_toString(x_2, x_13); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_16 = lean_string_append(x_15, x_14); lean_dec(x_14); -x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -8592,7 +8323,7 @@ lean_inc(x_21); lean_inc(x_20); lean_dec(x_6); lean_inc(x_2); -x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_20, x_2); +x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_20, x_2); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; @@ -8606,10 +8337,10 @@ uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_obje lean_dec(x_1); x_25 = 1; x_26 = l_Lean_Name_toString(x_2, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_30 = lean_string_append(x_28, x_29); x_31 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_31, 0, x_30); @@ -8645,7 +8376,7 @@ x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); x_9 = 1; x_10 = l_Lean_Name_toString(x_1, x_9); -x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -8664,7 +8395,7 @@ lean_inc(x_16); lean_dec(x_4); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -8728,228 +8459,112 @@ _start: { if (lean_obj_tag(x_3) == 0) { -uint8_t x_6; +lean_object* x_6; lean_object* x_7; lean_dec(x_2); -x_6 = !lean_is_exclusive(x_3); -if (x_6 == 0) -{ -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_3); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +lean_dec(x_3); +x_7 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); return x_7; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_8; x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); lean_dec(x_3); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_5); -return x_10; +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_st_ref_set(x_1, x_2, x_5); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_dec(x_11); +x_12 = lean_box(0); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_9, 1); +lean_inc(x_13); +lean_dec(x_9); +x_14 = lean_box(0); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; } } else { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_3); -if (x_11 == 0) -{ -lean_object* x_12; -x_12 = lean_ctor_get(x_3, 0); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; uint8_t x_14; -lean_free_object(x_3); -x_13 = lean_st_ref_set(x_1, x_2, x_5); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_13, 0); -lean_dec(x_15); -x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -lean_ctor_set(x_13, 0, x_16); -return x_13; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_13, 1); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; size_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_16 = lean_ctor_get(x_8, 0); +lean_inc(x_16); +lean_dec(x_8); +x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); -lean_dec(x_13); -x_18 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; -} -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; size_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_20 = lean_ctor_get(x_12, 0); -lean_inc(x_20); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -x_23 = lean_ctor_get(x_20, 2); -lean_inc(x_23); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +x_19 = lean_ctor_get(x_16, 2); +lean_inc(x_19); +lean_dec(x_16); +x_20 = lean_array_get_size(x_17); +x_21 = lean_usize_of_nat(x_20); lean_dec(x_20); -x_24 = lean_array_get_size(x_21); -x_25 = lean_usize_of_nat(x_24); -lean_dec(x_24); -x_26 = x_21; -x_27 = lean_box_usize(x_25); -x_28 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed__const__1; -x_29 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed), 4, 3); -lean_closure_set(x_29, 0, x_27); -lean_closure_set(x_29, 1, x_28); -lean_closure_set(x_29, 2, x_26); -x_30 = x_29; -x_31 = lean_apply_1(x_30, x_2); +x_22 = x_17; +x_23 = lean_box_usize(x_21); +x_24 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed__const__1; +x_25 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed), 4, 3); +lean_closure_set(x_25, 0, x_23); +lean_closure_set(x_25, 1, x_24); +lean_closure_set(x_25, 2, x_22); +x_26 = x_25; +x_27 = lean_apply_1(x_26, x_2); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1; +x_31 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8(x_30, x_18, x_29); x_32 = lean_ctor_get(x_31, 0); lean_inc(x_32); x_33 = lean_ctor_get(x_31, 1); lean_inc(x_33); lean_dec(x_31); -x_34 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_35 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_34, x_22, x_33); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 1); -lean_inc(x_37); +x_34 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_34, 0, x_28); +lean_ctor_set(x_34, 1, x_32); +lean_ctor_set(x_34, 2, x_19); +x_35 = lean_st_ref_set(x_1, x_33, x_5); +x_36 = !lean_is_exclusive(x_35); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_35, 0); +lean_dec(x_37); +x_38 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(x_34); +lean_ctor_set(x_35, 0, x_38); +return x_35; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_35, 1); +lean_inc(x_39); lean_dec(x_35); -x_38 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_38, 0, x_32); -lean_ctor_set(x_38, 1, x_36); -lean_ctor_set(x_38, 2, x_23); -x_39 = lean_st_ref_set(x_1, x_37, x_5); -x_40 = !lean_is_exclusive(x_39); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; -x_41 = lean_ctor_get(x_39, 0); -lean_dec(x_41); -x_42 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(x_38); -lean_ctor_set(x_3, 0, x_42); -lean_ctor_set(x_39, 0, x_3); -return x_39; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_39, 1); -lean_inc(x_43); -lean_dec(x_39); -x_44 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(x_38); -lean_ctor_set(x_3, 0, x_44); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_3); -lean_ctor_set(x_45, 1, x_43); -return x_45; -} -} -} -else -{ -lean_object* x_46; -x_46 = lean_ctor_get(x_3, 0); -lean_inc(x_46); -lean_dec(x_3); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_st_ref_set(x_1, x_2, x_5); -x_48 = lean_ctor_get(x_47, 1); -lean_inc(x_48); -if (lean_is_exclusive(x_47)) { - lean_ctor_release(x_47, 0); - lean_ctor_release(x_47, 1); - x_49 = x_47; -} else { - lean_dec_ref(x_47); - x_49 = lean_box(0); -} -x_50 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1; -if (lean_is_scalar(x_49)) { - x_51 = lean_alloc_ctor(0, 2, 0); -} else { - x_51 = x_49; -} -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_48); -return x_51; -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; size_t x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_52 = lean_ctor_get(x_46, 0); -lean_inc(x_52); -lean_dec(x_46); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -x_55 = lean_ctor_get(x_52, 2); -lean_inc(x_55); -lean_dec(x_52); -x_56 = lean_array_get_size(x_53); -x_57 = lean_usize_of_nat(x_56); -lean_dec(x_56); -x_58 = x_53; -x_59 = lean_box_usize(x_57); -x_60 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed__const__1; -x_61 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed), 4, 3); -lean_closure_set(x_61, 0, x_59); -lean_closure_set(x_61, 1, x_60); -lean_closure_set(x_61, 2, x_58); -x_62 = x_61; -x_63 = lean_apply_1(x_62, x_2); -x_64 = lean_ctor_get(x_63, 0); -lean_inc(x_64); -x_65 = lean_ctor_get(x_63, 1); -lean_inc(x_65); -lean_dec(x_63); -x_66 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1; -x_67 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7(x_66, x_54, x_65); -x_68 = lean_ctor_get(x_67, 0); -lean_inc(x_68); -x_69 = lean_ctor_get(x_67, 1); -lean_inc(x_69); -lean_dec(x_67); -x_70 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_70, 0, x_64); -lean_ctor_set(x_70, 1, x_68); -lean_ctor_set(x_70, 2, x_55); -x_71 = lean_st_ref_set(x_1, x_69, x_5); -x_72 = lean_ctor_get(x_71, 1); -lean_inc(x_72); -if (lean_is_exclusive(x_71)) { - lean_ctor_release(x_71, 0); - lean_ctor_release(x_71, 1); - x_73 = x_71; -} else { - lean_dec_ref(x_71); - x_73 = lean_box(0); -} -x_74 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(x_70); -x_75 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_75, 0, x_74); -if (lean_is_scalar(x_73)) { - x_76 = lean_alloc_ctor(0, 2, 0); -} else { - x_76 = x_73; -} -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_72); -return x_76; +x_40 = l___private_Lean_Widget_InteractiveGoal_0__Lean_Widget_Lean_Widget_InteractiveTermGoal_toJsonRpcEncodingPacket____x40_Lean_Widget_InteractiveGoal___hyg_1074_(x_34); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_39); +return x_41; } } } @@ -8968,15 +8583,15 @@ lean_object* x_8; lean_object* x_9; lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; -x_9 = lean_alloc_ctor(0, 2, 0); +x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; +x_9 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_5); return x_9; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_10 = lean_ctor_get(x_7, 0); lean_inc(x_10); lean_dec(x_7); @@ -8986,8 +8601,8 @@ lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); -x_14 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7675____spec__22(x_3); -x_15 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 3, 1); +x_14 = l_Lean_Server_parseRequestParams___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__31(x_3); +x_15 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_FileWorker_initFn____x40_Lean_Server_FileWorker_RequestHandling___hyg_7731____spec__32___boxed), 3, 1); lean_closure_set(x_15, 0, x_14); x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1; x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg), 4, 2); @@ -9000,26 +8615,20 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -lean_dec(x_19); -x_22 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 4, 1); -lean_closure_set(x_22, 0, x_1); +x_21 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2), 4, 1); +lean_closure_set(x_21, 0, x_1); lean_inc(x_4); -x_23 = l_Lean_Server_RequestM_bindTask___rarg(x_21, x_22, x_4, x_20); -x_24 = lean_ctor_get(x_23, 0); +x_22 = l_Lean_Server_RequestM_bindTask___rarg(x_19, x_21, x_4, x_20); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed), 5, 2); -lean_closure_set(x_27, 0, x_10); -lean_closure_set(x_27, 1, x_12); -x_28 = l_Lean_Server_RequestM_mapTask___rarg(x_26, x_27, x_4, x_25); -return x_28; +lean_dec(x_22); +x_25 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__3___lambda__1___boxed), 5, 2); +lean_closure_set(x_25, 0, x_10); +lean_closure_set(x_25, 1, x_12); +x_26 = l_Lean_Server_RequestM_mapTask___rarg(x_23, x_25, x_4, x_24); +return x_26; } } } @@ -9074,7 +8683,7 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; @@ -9089,10 +8698,10 @@ uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_obje lean_dec(x_1); x_13 = 1; x_14 = l_Lean_Name_toString(x_2, x_13); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_16 = lean_string_append(x_15, x_14); lean_dec(x_14); -x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -9110,7 +8719,7 @@ lean_inc(x_21); lean_inc(x_20); lean_dec(x_6); lean_inc(x_2); -x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_20, x_2); +x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_20, x_2); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; @@ -9124,10 +8733,10 @@ uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_obje lean_dec(x_1); x_25 = 1; x_26 = l_Lean_Name_toString(x_2, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_30 = lean_string_append(x_28, x_29); x_31 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_31, 0, x_30); @@ -9163,7 +8772,7 @@ x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); x_9 = 1; x_10 = l_Lean_Name_toString(x_1, x_9); -x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -9182,7 +8791,7 @@ lean_inc(x_16); lean_dec(x_4); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -9244,7 +8853,7 @@ static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_Wid _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; +x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; x_2 = l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -9270,7 +8879,7 @@ static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_Wid _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; +x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; x_2 = l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____closed__4; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -9870,7 +9479,7 @@ return x_1; LEAN_EXPORT lean_object* l_Lean_Widget_getInteractiveDiagnostics(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_4 = l_Lean_Server_RequestM_readDoc(x_2, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); @@ -9884,201 +9493,72 @@ if (lean_is_exclusive(x_4)) { lean_dec_ref(x_4); x_7 = lean_box(0); } -x_8 = !lean_is_exclusive(x_5); -if (x_8 == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_9 = lean_ctor_get(x_5, 0); if (lean_obj_tag(x_1) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = lean_ctor_get(x_9, 2); -lean_inc(x_25); -lean_dec(x_9); -x_26 = l_Lean_Widget_getInteractiveDiagnostics___closed__1; -x_27 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_26, x_25, x_6); -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); -lean_inc(x_29); -lean_dec(x_27); -lean_ctor_set(x_5, 0, x_28); -x_10 = x_5; -x_11 = x_29; -goto block_24; -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_30 = lean_ctor_get(x_1, 0); -lean_inc(x_30); -x_31 = lean_ctor_get(x_9, 0); -lean_inc(x_31); -x_32 = lean_ctor_get(x_31, 2); -lean_inc(x_32); -lean_dec(x_31); -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -lean_dec(x_30); -x_34 = lean_unsigned_to_nat(0u); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); -x_36 = l_Lean_FileMap_lspPosToUtf8Pos(x_32, x_35); -lean_dec(x_32); -x_37 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__3___boxed), 2, 1); -lean_closure_set(x_37, 0, x_36); -x_38 = lean_ctor_get(x_9, 2); -lean_inc(x_38); -lean_dec(x_9); -x_39 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_37, x_38, x_6); -x_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -x_41 = lean_ctor_get(x_39, 1); -lean_inc(x_41); -lean_dec(x_39); -lean_ctor_set(x_5, 0, x_40); -x_10 = x_5; -x_11 = x_41; -goto block_24; -} -block_24: -{ -uint8_t x_12; -x_12 = !lean_is_exclusive(x_10); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = lean_ctor_get(x_10, 0); -x_14 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__1___boxed), 2, 1); -lean_closure_set(x_14, 0, x_1); -x_15 = l_Task_Priority_default; -x_16 = lean_task_map(x_14, x_13, x_15); -lean_ctor_set(x_10, 0, x_16); -if (lean_is_scalar(x_7)) { - x_17 = lean_alloc_ctor(0, 2, 0); -} else { - x_17 = x_7; -} -lean_ctor_set(x_17, 0, x_10); -lean_ctor_set(x_17, 1, x_11); -return x_17; -} -else -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_18 = lean_ctor_get(x_10, 0); -lean_inc(x_18); -lean_dec(x_10); -x_19 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__1___boxed), 2, 1); -lean_closure_set(x_19, 0, x_1); -x_20 = l_Task_Priority_default; -x_21 = lean_task_map(x_19, x_18, x_20); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_21); -if (lean_is_scalar(x_7)) { - x_23 = lean_alloc_ctor(0, 2, 0); -} else { - x_23 = x_7; -} -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_11); -return x_23; -} -} -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_5, 0); -lean_inc(x_42); +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_5, 2); +lean_inc(x_15); lean_dec(x_5); -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_53 = lean_ctor_get(x_42, 2); -lean_inc(x_53); -lean_dec(x_42); -x_54 = l_Lean_Widget_getInteractiveDiagnostics___closed__1; -x_55 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_54, x_53, x_6); -x_56 = lean_ctor_get(x_55, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_55, 1); -lean_inc(x_57); -lean_dec(x_55); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_56); -x_43 = x_58; -x_44 = x_57; -goto block_52; +x_16 = l_Lean_Widget_getInteractiveDiagnostics___closed__1; +x_17 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_16, x_15, x_6); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_8 = x_18; +x_9 = x_19; +goto block_14; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_59 = lean_ctor_get(x_1, 0); -lean_inc(x_59); -x_60 = lean_ctor_get(x_42, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_60, 2); -lean_inc(x_61); -lean_dec(x_60); -x_62 = lean_ctor_get(x_59, 1); -lean_inc(x_62); -lean_dec(x_59); -x_63 = lean_unsigned_to_nat(0u); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_62); -lean_ctor_set(x_64, 1, x_63); -x_65 = l_Lean_FileMap_lspPosToUtf8Pos(x_61, x_64); -lean_dec(x_61); -x_66 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__3___boxed), 2, 1); -lean_closure_set(x_66, 0, x_65); -x_67 = lean_ctor_get(x_42, 2); -lean_inc(x_67); -lean_dec(x_42); -x_68 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_66, x_67, x_6); -x_69 = lean_ctor_get(x_68, 0); -lean_inc(x_69); -x_70 = lean_ctor_get(x_68, 1); -lean_inc(x_70); -lean_dec(x_68); -x_71 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_71, 0, x_69); -x_43 = x_71; -x_44 = x_70; -goto block_52; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_20 = lean_ctor_get(x_5, 2); +lean_inc(x_20); +x_21 = lean_ctor_get(x_1, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_5, 0); +lean_inc(x_22); +lean_dec(x_5); +x_23 = lean_ctor_get(x_22, 2); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); +lean_dec(x_21); +x_25 = lean_unsigned_to_nat(0u); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +x_27 = l_Lean_FileMap_lspPosToUtf8Pos(x_23, x_26); +lean_dec(x_23); +x_28 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__3___boxed), 2, 1); +lean_closure_set(x_28, 0, x_27); +x_29 = l_IO_AsyncList_waitAll___at_Lean_Server_FileWorker_handleSemanticTokens___spec__1(x_28, x_20, x_6); +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_8 = x_30; +x_9 = x_31; +goto block_14; } -block_52: +block_14: { -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_45 = lean_ctor_get(x_43, 0); -lean_inc(x_45); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - x_46 = x_43; -} else { - lean_dec_ref(x_43); - x_46 = lean_box(0); -} -x_47 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__1___boxed), 2, 1); -lean_closure_set(x_47, 0, x_1); -x_48 = l_Task_Priority_default; -x_49 = lean_task_map(x_47, x_45, x_48); -if (lean_is_scalar(x_46)) { - x_50 = lean_alloc_ctor(1, 1, 0); -} else { - x_50 = x_46; -} -lean_ctor_set(x_50, 0, x_49); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = lean_alloc_closure((void*)(l_Lean_Widget_getInteractiveDiagnostics___lambda__1___boxed), 2, 1); +lean_closure_set(x_10, 0, x_1); +x_11 = l_Task_Priority_default; +x_12 = lean_task_map(x_10, x_8, x_11); if (lean_is_scalar(x_7)) { - x_51 = lean_alloc_ctor(0, 2, 0); + x_13 = lean_alloc_ctor(0, 2, 0); } else { - x_51 = x_7; -} -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_44); -return x_51; + x_13 = x_7; } +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_9); +return x_13; } } } @@ -10212,7 +9692,32 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -10238,8 +9743,8 @@ if (x_12 == 0) { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; size_t x_18; size_t x_19; lean_object* x_20; lean_object* x_21; x_13 = lean_ctor_get(x_11, 5); -x_14 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; -x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_14, x_13, x_4); +x_14 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1; +x_15 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_14, x_13, x_4); x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); x_17 = lean_ctor_get(x_15, 1); @@ -10275,8 +9780,8 @@ lean_inc(x_25); lean_inc(x_24); lean_inc(x_23); lean_dec(x_11); -x_31 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1; -x_32 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13(x_31, x_28, x_4); +x_31 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1; +x_32 = l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14(x_31, x_28, x_4); x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); @@ -10303,7 +9808,7 @@ goto _start; } } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1() { _start: { lean_object* x_1; @@ -10311,7 +9816,7 @@ x_1 = lean_mk_string("range"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2() { _start: { lean_object* x_1; @@ -10319,7 +9824,7 @@ x_1 = lean_mk_string("fullRange"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3() { _start: { lean_object* x_1; @@ -10327,7 +9832,7 @@ x_1 = lean_mk_string("severity"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4() { _start: { lean_object* x_1; @@ -10335,7 +9840,7 @@ x_1 = lean_mk_string("code"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5() { _start: { lean_object* x_1; @@ -10343,7 +9848,7 @@ x_1 = lean_mk_string("source"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6() { _start: { lean_object* x_1; @@ -10351,7 +9856,7 @@ x_1 = lean_mk_string("message"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7() { _start: { lean_object* x_1; @@ -10359,7 +9864,7 @@ x_1 = lean_mk_string("tags"); return x_1; } } -static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8() { +static lean_object* _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8() { _start: { lean_object* x_1; @@ -10367,14 +9872,14 @@ x_1 = lean_mk_string("relatedInformation"); return x_1; } } -LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); x_3 = l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonRange____x40_Lean_Data_Lsp_Basic___hyg_458_(x_2); -x_4 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1; +x_4 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1; x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_4); lean_ctor_set(x_5, 1, x_3); @@ -10385,7 +9890,7 @@ lean_ctor_set(x_7, 1, x_6); x_8 = lean_ctor_get(x_1, 1); lean_inc(x_8); x_9 = l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonRange____x40_Lean_Data_Lsp_Basic___hyg_458_(x_8); -x_10 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2; +x_10 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_9); @@ -10394,23 +9899,23 @@ lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_6); x_13 = lean_ctor_get(x_1, 2); lean_inc(x_13); -x_14 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3; +x_14 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3; x_15 = l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__1(x_14, x_13); lean_dec(x_13); x_16 = lean_ctor_get(x_1, 3); lean_inc(x_16); -x_17 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4; +x_17 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4; x_18 = l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__2(x_17, x_16); lean_dec(x_16); x_19 = lean_ctor_get(x_1, 4); lean_inc(x_19); -x_20 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5; +x_20 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5; x_21 = l_Lean_Json_opt___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonDocumentFilter____x40_Lean_Data_Lsp_Basic___hyg_1817____spec__1(x_20, x_19); lean_dec(x_19); x_22 = lean_ctor_get(x_1, 5); lean_inc(x_22); -x_23 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15(x_22); -x_24 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6; +x_23 = l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16(x_22); +x_24 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6; x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_23); @@ -10419,12 +9924,12 @@ lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_6); x_27 = lean_ctor_get(x_1, 6); lean_inc(x_27); -x_28 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7; +x_28 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7; x_29 = l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__3(x_28, x_27); x_30 = lean_ctor_get(x_1, 7); lean_inc(x_30); lean_dec(x_1); -x_31 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8; +x_31 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8; x_32 = l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____spec__5(x_31, x_30); x_33 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_33, 0, x_32); @@ -10455,7 +9960,7 @@ x_42 = l_Lean_Json_mkObj(x_41); return x_42; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(size_t x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6(size_t x_1, size_t x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -10473,7 +9978,7 @@ x_6 = lean_array_uget(x_3, x_2); x_7 = lean_unsigned_to_nat(0u); x_8 = lean_array_uset(x_3, x_2, x_7); x_9 = x_6; -x_10 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(x_9); +x_10 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(x_9); x_11 = 1; x_12 = lean_usize_add(x_2, x_11); x_13 = x_10; @@ -10498,150 +10003,76 @@ _start: { if (lean_obj_tag(x_3) == 0) { -uint8_t x_6; +lean_object* x_6; lean_object* x_7; lean_dec(x_1); -x_6 = !lean_is_exclusive(x_3); -if (x_6 == 0) -{ -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_3); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +lean_dec(x_3); +x_7 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); return x_7; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); lean_dec(x_3); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_5); -return x_10; -} +x_9 = lean_array_get_size(x_8); +x_10 = lean_usize_of_nat(x_9); +lean_dec(x_9); +x_11 = 0; +x_12 = x_8; +x_13 = lean_box_usize(x_10); +x_14 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1; +x_15 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___boxed), 4, 3); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +lean_closure_set(x_15, 2, x_12); +x_16 = x_15; +x_17 = lean_apply_1(x_16, x_1); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_st_ref_set(x_2, x_19, x_5); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; size_t x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_22 = lean_ctor_get(x_20, 0); +lean_dec(x_22); +x_23 = lean_array_get_size(x_18); +x_24 = lean_usize_of_nat(x_23); +lean_dec(x_23); +x_25 = x_18; +x_26 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6(x_24, x_11, x_25); +x_27 = x_26; +x_28 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_20, 0, x_28); +return x_20; } else { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_3); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; size_t x_14; size_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_12 = lean_ctor_get(x_3, 0); -x_13 = lean_array_get_size(x_12); -x_14 = lean_usize_of_nat(x_13); -lean_dec(x_13); -x_15 = 0; -x_16 = x_12; -x_17 = lean_box_usize(x_14); -x_18 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1; -x_19 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed), 4, 3); -lean_closure_set(x_19, 0, x_17); -lean_closure_set(x_19, 1, x_18); -lean_closure_set(x_19, 2, x_16); -x_20 = x_19; -x_21 = lean_apply_1(x_20, x_1); -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_21, 1); -lean_inc(x_23); -lean_dec(x_21); -x_24 = lean_st_ref_set(x_2, x_23, x_5); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; size_t x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -x_27 = lean_array_get_size(x_22); -x_28 = lean_usize_of_nat(x_27); -lean_dec(x_27); -x_29 = x_22; -x_30 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(x_28, x_15, x_29); -x_31 = x_30; -x_32 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_3, 0, x_32); -lean_ctor_set(x_24, 0, x_3); -return x_24; -} -else -{ -lean_object* x_33; lean_object* x_34; size_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_33 = lean_ctor_get(x_24, 1); -lean_inc(x_33); -lean_dec(x_24); -x_34 = lean_array_get_size(x_22); -x_35 = lean_usize_of_nat(x_34); -lean_dec(x_34); -x_36 = x_22; -x_37 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(x_35, x_15, x_36); -x_38 = x_37; -x_39 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_3, 0, x_39); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_3); -lean_ctor_set(x_40, 1, x_33); -return x_40; -} -} -else -{ -lean_object* x_41; lean_object* x_42; size_t x_43; size_t x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; size_t x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_41 = lean_ctor_get(x_3, 0); -lean_inc(x_41); -lean_dec(x_3); -x_42 = lean_array_get_size(x_41); -x_43 = lean_usize_of_nat(x_42); -lean_dec(x_42); -x_44 = 0; -x_45 = x_41; -x_46 = lean_box_usize(x_43); -x_47 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1; -x_48 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed), 4, 3); -lean_closure_set(x_48, 0, x_46); -lean_closure_set(x_48, 1, x_47); -lean_closure_set(x_48, 2, x_45); -x_49 = x_48; -x_50 = lean_apply_1(x_49, x_1); -x_51 = lean_ctor_get(x_50, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_50, 1); -lean_inc(x_52); -lean_dec(x_50); -x_53 = lean_st_ref_set(x_2, x_52, x_5); -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -if (lean_is_exclusive(x_53)) { - lean_ctor_release(x_53, 0); - lean_ctor_release(x_53, 1); - x_55 = x_53; -} else { - lean_dec_ref(x_53); - x_55 = lean_box(0); -} -x_56 = lean_array_get_size(x_51); -x_57 = lean_usize_of_nat(x_56); -lean_dec(x_56); -x_58 = x_51; -x_59 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(x_57, x_44, x_58); -x_60 = x_59; -x_61 = lean_alloc_ctor(4, 1, 0); -lean_ctor_set(x_61, 0, x_60); -x_62 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_62, 0, x_61); -if (lean_is_scalar(x_55)) { - x_63 = lean_alloc_ctor(0, 2, 0); -} else { - x_63 = x_55; -} -lean_ctor_set(x_63, 0, x_62); -lean_ctor_set(x_63, 1, x_54); -return x_63; +lean_object* x_29; lean_object* x_30; size_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_29 = lean_ctor_get(x_20, 1); +lean_inc(x_29); +lean_dec(x_20); +x_30 = lean_array_get_size(x_18); +x_31 = lean_usize_of_nat(x_30); +lean_dec(x_30); +x_32 = x_18; +x_33 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6(x_31, x_11, x_32); +x_34 = x_33; +x_35 = lean_alloc_ctor(4, 1, 0); +lean_ctor_set(x_35, 0, x_34); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_29); +return x_36; } } } @@ -10659,15 +10090,15 @@ lean_object* x_8; lean_object* x_9; lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3; -x_9 = lean_alloc_ctor(0, 2, 0); +x_8 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2; +x_9 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_5); return x_9; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_10 = lean_ctor_get(x_7, 0); lean_inc(x_10); lean_dec(x_7); @@ -10678,7 +10109,7 @@ x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); x_14 = l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__2(x_3); -x_15 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___boxed), 3, 1); +x_15 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed), 3, 1); lean_closure_set(x_15, 0, x_14); x_16 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1; x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_FileWorker_handleDocumentSymbol___spec__2___rarg), 4, 2); @@ -10691,26 +10122,20 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -lean_dec(x_19); -x_22 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3), 4, 1); -lean_closure_set(x_22, 0, x_1); +x_21 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2), 4, 1); +lean_closure_set(x_21, 0, x_1); lean_inc(x_4); -x_23 = l_Lean_Server_RequestM_bindTask___rarg(x_21, x_22, x_4, x_20); -x_24 = lean_ctor_get(x_23, 0); +x_22 = l_Lean_Server_RequestM_bindTask___rarg(x_19, x_21, x_4, x_20); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed), 5, 2); -lean_closure_set(x_27, 0, x_12); -lean_closure_set(x_27, 1, x_10); -x_28 = l_Lean_Server_RequestM_mapTask___rarg(x_26, x_27, x_4, x_25); -return x_28; +lean_dec(x_22); +x_25 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed), 5, 2); +lean_closure_set(x_25, 0, x_12); +lean_closure_set(x_25, 1, x_10); +x_26 = l_Lean_Server_RequestM_mapTask___rarg(x_23, x_25, x_4, x_24); +return x_26; } } } @@ -10765,7 +10190,7 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; @@ -10780,10 +10205,10 @@ uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_obje lean_dec(x_1); x_13 = 1; x_14 = l_Lean_Name_toString(x_2, x_13); -x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_15 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_16 = lean_string_append(x_15, x_14); lean_dec(x_14); -x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_17 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_18 = lean_string_append(x_16, x_17); x_19 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_19, 0, x_18); @@ -10801,7 +10226,7 @@ lean_inc(x_21); lean_inc(x_20); lean_dec(x_6); lean_inc(x_2); -x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_20, x_2); +x_22 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_20, x_2); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; @@ -10815,10 +10240,10 @@ uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_obje lean_dec(x_1); x_25 = 1; x_26 = l_Lean_Name_toString(x_2, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); -x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2; +x_29 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2; x_30 = lean_string_append(x_28, x_29); x_31 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_31, 0, x_30); @@ -10854,7 +10279,7 @@ x_8 = lean_ctor_get(x_4, 0); lean_dec(x_8); x_9 = 1; x_10 = l_Lean_Name_toString(x_1, x_9); -x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_11 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_12 = lean_string_append(x_11, x_10); lean_dec(x_10); x_13 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -10873,7 +10298,7 @@ lean_inc(x_16); lean_dec(x_4); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1; @@ -10935,7 +10360,7 @@ static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_Wid _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2; +x_1 = l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2; x_2 = l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -10959,7 +10384,17 @@ x_4 = l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_S return x_4; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { size_t x_5; size_t x_6; lean_object* x_7; @@ -10967,11 +10402,11 @@ x_5 = lean_unbox_usize(x_1); lean_dec(x_1); x_6 = lean_unbox_usize(x_2); lean_dec(x_2); -x_7 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__3(x_5, x_6, x_3, x_4); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4(x_5, x_6, x_3, x_4); return x_7; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; lean_object* x_6; @@ -10979,7 +10414,7 @@ x_4 = lean_unbox_usize(x_1); lean_dec(x_1); x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5(x_4, x_5, x_3); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__6(x_4, x_5, x_3); return x_6; } } @@ -11073,70 +10508,68 @@ l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_File lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__2); l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3 = _init_l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3(); lean_mark_persistent(l_Lean_Server_parseRequestParams___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__2___closed__3); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__1); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__2); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__3); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__4); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__5); -l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6(); -lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___rarg___closed__6); -l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__1); -l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__2); -l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__3); -l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__3___closed__4); -l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__1); -l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__2); -l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__3); -l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4(); -lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___closed__4); -l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1 = _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1(); -lean_mark_persistent(l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__7___boxed__const__1); -l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__10___boxed__const__1); -l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1 = _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1(); -lean_mark_persistent(l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__13___boxed__const__1); -l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1(); -lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__1); -l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2(); -lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__2); -l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3(); -lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__3); -l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4(); -lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__15___closed__4); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__1); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__2); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__2___closed__3); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___boxed__const__1); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__1); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__2); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__3); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__4); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__5); +l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6 = _init_l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6(); +lean_mark_persistent(l_Lean_Server_WithRpcRef_decodeUnsafeAs___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__5___rarg___closed__6); +l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__1); +l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__2); +l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__3); +l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_Lean_MessageData_decodeUnsafe____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__4___closed__4); +l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__1); +l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__2); +l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__3); +l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4 = _init_l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4(); +lean_mark_persistent(l___private_Lean_Widget_InteractiveCode_0__Lean_Widget_Lean_Widget_InfoWithCtx_encodeUnsafe____x40_Lean_Widget_InteractiveCode___hyg_5____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__6___closed__4); +l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1 = _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1(); +lean_mark_persistent(l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__8___boxed__const__1); +l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__11___boxed__const__1); +l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1 = _init_l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1(); +lean_mark_persistent(l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__14___boxed__const__1); +l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1(); +lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__1); +l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2(); +lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__2); +l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3(); +lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__3); +l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4 = _init_l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4(); +lean_mark_persistent(l___private_Lean_Widget_TaggedText_0__Lean_Widget_toJsonTaggedText____x40_Lean_Widget_TaggedText___hyg_578____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__16___closed__4); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__1); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__2); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__1___closed__3); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__3___boxed__const__1); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__4___closed__1); l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1(); lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__1); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__1); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__2); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__6___closed__3); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__1); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__8___closed__2); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__5___closed__2); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__1); +l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___lambda__7___closed__2); l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1(); lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____spec__1___closed__1); l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__1 = _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_246____closed__1(); @@ -11207,8 +10640,6 @@ if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed__const__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed__const__1(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__2___boxed__const__1); -l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___closed__1); l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1(); lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__2___boxed__const__1); l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_854____spec__1___lambda__3___closed__1(); @@ -11248,22 +10679,22 @@ l_Lean_Widget_getInteractiveDiagnostics___lambda__1___closed__2 = _init_l_Lean_W lean_mark_persistent(l_Lean_Widget_getInteractiveDiagnostics___lambda__1___closed__2); l_Lean_Widget_getInteractiveDiagnostics___closed__1 = _init_l_Lean_Widget_getInteractiveDiagnostics___closed__1(); lean_mark_persistent(l_Lean_Widget_getInteractiveDiagnostics___closed__1); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__1); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__2); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__3); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__4); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__5); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__6); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__7); -l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8(); -lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__4___closed__8); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__1); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__2); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__3); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__4); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__5); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__6); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__7); +l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8 = _init_l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8(); +lean_mark_persistent(l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_883____at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__5___closed__8); l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1 = _init_l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1(); lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___at_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____spec__1___lambda__1___boxed__const__1); l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__1 = _init_l_Lean_Widget_initFn____x40_Lean_Server_FileWorker_WidgetRequests___hyg_1143____closed__1(); diff --git a/stage0/stdlib/Lean/Server/InfoUtils.c b/stage0/stdlib/Lean/Server/InfoUtils.c index 394f33ea8d..aa7df09166 100644 --- a/stage0/stdlib/Lean/Server/InfoUtils.c +++ b/stage0/stdlib/Lean/Server/InfoUtils.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Server.InfoUtils -// Imports: Init Lean.DocString Lean.Elab.InfoTree Lean.Util.Sorry +// Imports: Init Lean.DocString Lean.Elab.InfoTree Lean.PrettyPrinter.Delaborator.Options Lean.Util.Sorry #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -227,6 +227,7 @@ LEAN_EXPORT lean_object* l_Std_HashSetImp_insert___at_Lean_Elab_InfoTree_termGoa LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_InfoTree_foldInfo_go___spec__26___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_InfoTree_foldInfo_go___spec__26___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_InfoTree_foldInfo_go___spec__19___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_pp_fullNames; LEAN_EXPORT lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlMAux___at_Lean_Elab_InfoTree_foldInfo_go___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Server_InfoUtils_0__String_reprRange____x40_Lean_Server_InfoUtils___hyg_35____closed__9; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_InfoTree_foldInfo_go___spec__21(lean_object*); @@ -318,6 +319,7 @@ static lean_object* l_List_mapTRAux___at_Lean_Elab_InfoTree_smallestInfo_x3f___s LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_InfoTree_foldInfo_go___spec__21___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_foldlM___at_Lean_Elab_InfoTree_foldInfo_go___spec__1(lean_object*); lean_object* lean_nat_to_int(lean_object*); +lean_object* l_Lean_Option_set___at_Lean_Meta_withPPInaccessibleNamesImp___spec__2(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l___private_Std_Data_PersistentArray_0__Std_PersistentArray_foldlMAux___at_Lean_Elab_InfoTree_foldInfo_go___spec__16(lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_foldlM___at_Lean_Elab_InfoTree_foldInfo_go___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_InfoTree_goalsAt_x3f_hasNestedTactic___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -4556,142 +4558,139 @@ lean_inc(x_8); x_9 = lean_infer_type(x_8, x_2, x_3, x_4, x_5, x_6); if (lean_obj_tag(x_9) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; x_10 = lean_ctor_get(x_9, 0); lean_inc(x_10); x_11 = lean_ctor_get(x_9, 1); lean_inc(x_11); lean_dec(x_9); -x_12 = l_Lean_Meta_ppExpr(x_8, x_2, x_3, x_4, x_5, x_11); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_12, 0); +x_12 = lean_ctor_get(x_4, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_4, 1); lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); +x_14 = lean_ctor_get(x_4, 2); lean_inc(x_14); -lean_dec(x_12); -x_15 = l_Lean_Meta_ppExpr(x_10, x_2, x_3, x_4, x_5, x_14); +x_15 = lean_ctor_get(x_4, 3); +lean_inc(x_15); +x_16 = lean_ctor_get(x_4, 4); +lean_inc(x_16); +x_17 = lean_ctor_get(x_4, 5); +lean_inc(x_17); +x_18 = lean_ctor_get(x_4, 6); +lean_inc(x_18); +x_19 = lean_ctor_get(x_4, 7); +lean_inc(x_19); +x_20 = l_Lean_pp_fullNames; +x_21 = 1; +x_22 = l_Lean_Option_set___at_Lean_Meta_withPPInaccessibleNamesImp___spec__2(x_12, x_20, x_21); +x_23 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_13); +lean_ctor_set(x_23, 2, x_14); +lean_ctor_set(x_23, 3, x_15); +lean_ctor_set(x_23, 4, x_16); +lean_ctor_set(x_23, 5, x_17); +lean_ctor_set(x_23, 6, x_18); +lean_ctor_set(x_23, 7, x_19); +x_24 = l_Lean_Meta_ppExpr(x_8, x_2, x_3, x_23, x_5, x_11); +lean_dec(x_23); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = l_Lean_Meta_ppExpr(x_10, x_2, x_3, x_4, x_5, x_26); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -if (lean_obj_tag(x_15) == 0) +if (lean_obj_tag(x_27) == 0) { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_15); -if (x_16 == 0) +uint8_t x_28; +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) { -lean_object* x_17; uint8_t x_18; -x_17 = lean_ctor_get(x_15, 0); -x_18 = l_Lean_Elab_Info_fmtHover_x3f_isAtomicFormat(x_13); -if (x_18 == 0) +lean_object* x_29; uint8_t x_30; +x_29 = lean_ctor_get(x_27, 0); +x_30 = l_Lean_Elab_Info_fmtHover_x3f_isAtomicFormat(x_25); +if (x_30 == 0) { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_13); -x_19 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; -x_20 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_17); -x_21 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_19); -x_22 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; -x_23 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_21); -x_24 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; -x_25 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -x_26 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_15, 0, x_26); -return x_15; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_27 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; -x_28 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_13); -x_29 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; -x_30 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -x_31 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_17); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_25); +x_31 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; x_32 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_27); -x_33 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; -x_34 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_32); -x_35 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; -x_36 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_15, 0, x_37); -return x_15; -} +lean_ctor_set(x_32, 1, x_29); +x_33 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_31); +x_34 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +x_35 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_33); +x_36 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; +x_37 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_27, 0, x_38); +return x_27; } else { -lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_38 = lean_ctor_get(x_15, 0); -x_39 = lean_ctor_get(x_15, 1); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_15); -x_40 = l_Lean_Elab_Info_fmtHover_x3f_isAtomicFormat(x_13); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_13); -x_41 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_39 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; +x_40 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_25); +x_41 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; x_42 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_42, 0, x_41); -lean_ctor_set(x_42, 1, x_38); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); x_43 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_41); -x_44 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; -x_45 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_43); -x_46 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; -x_47 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -x_48 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_48, 0, x_47); -x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 1, x_29); +x_44 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_44, 0, x_43); +lean_ctor_set(x_44, 1, x_39); +x_45 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +x_46 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_44); +x_47 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; +x_48 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +x_49 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_39); -return x_49; +lean_ctor_set(x_27, 0, x_49); +return x_27; +} } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_50 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; -x_51 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_13); -x_52 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; -x_53 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_27, 0); +x_51 = lean_ctor_get(x_27, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_27); +x_52 = l_Lean_Elab_Info_fmtHover_x3f_isAtomicFormat(x_25); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_25); +x_53 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; x_54 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_38); +lean_ctor_set(x_54, 1, x_50); x_55 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_50); +lean_ctor_set(x_55, 1, x_53); x_56 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; x_57 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_57, 0, x_56); @@ -4704,255 +4703,287 @@ x_60 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_60, 0, x_59); x_61 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_39); +lean_ctor_set(x_61, 1, x_51); return x_61; } -} -} else { -uint8_t x_62; -lean_dec(x_13); -x_62 = !lean_is_exclusive(x_15); -if (x_62 == 0) -{ -return x_15; -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_15, 0); -x_64 = lean_ctor_get(x_15, 1); -lean_inc(x_64); -lean_inc(x_63); -lean_dec(x_15); -x_65 = lean_alloc_ctor(1, 2, 0); +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_62 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__6; +x_63 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_25); +x_64 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; +x_65 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_65, 0, x_63); lean_ctor_set(x_65, 1, x_64); -return x_65; +x_66 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_50); +x_67 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_62); +x_68 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +x_69 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_67); +x_70 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; +x_71 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +x_72 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_72, 0, x_71); +x_73 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_51); +return x_73; } } } else { -uint8_t x_66; +uint8_t x_74; +lean_dec(x_25); +x_74 = !lean_is_exclusive(x_27); +if (x_74 == 0) +{ +return x_27; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_27, 0); +x_76 = lean_ctor_get(x_27, 1); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_27); +x_77 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +return x_77; +} +} +} +else +{ +uint8_t x_78; lean_dec(x_10); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_66 = !lean_is_exclusive(x_12); -if (x_66 == 0) +x_78 = !lean_is_exclusive(x_24); +if (x_78 == 0) { -return x_12; +return x_24; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_12, 0); -x_68 = lean_ctor_get(x_12, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_12); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_24, 0); +x_80 = lean_ctor_get(x_24, 1); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_24); +x_81 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_79); +lean_ctor_set(x_81, 1, x_80); +return x_81; } } } else { -uint8_t x_70; +uint8_t x_82; lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_70 = !lean_is_exclusive(x_9); -if (x_70 == 0) +x_82 = !lean_is_exclusive(x_9); +if (x_82 == 0) { return x_9; } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_9, 0); -x_72 = lean_ctor_get(x_9, 1); -lean_inc(x_72); -lean_inc(x_71); +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_9, 0); +x_84 = lean_ctor_get(x_9, 1); +lean_inc(x_84); +lean_inc(x_83); lean_dec(x_9); -x_73 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -return x_73; +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +return x_85; } } } case 4: { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_74 = lean_ctor_get(x_1, 0); -lean_inc(x_74); +lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_1, 0); +lean_inc(x_86); lean_dec(x_1); -x_75 = lean_ctor_get(x_74, 3); -lean_inc(x_75); +x_87 = lean_ctor_get(x_86, 3); +lean_inc(x_87); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_76 = lean_infer_type(x_75, x_2, x_3, x_4, x_5, x_6); -if (lean_obj_tag(x_76) == 0) +x_88 = lean_infer_type(x_87, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_88) == 0) { -lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_77 = lean_ctor_get(x_76, 0); -lean_inc(x_77); -x_78 = lean_ctor_get(x_76, 1); -lean_inc(x_78); -lean_dec(x_76); -x_79 = l_Lean_Meta_ppExpr(x_77, x_2, x_3, x_4, x_5, x_78); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 1); +lean_inc(x_90); +lean_dec(x_88); +x_91 = l_Lean_Meta_ppExpr(x_89, x_2, x_3, x_4, x_5, x_90); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -if (lean_obj_tag(x_79) == 0) +if (lean_obj_tag(x_91) == 0) { -uint8_t x_80; -x_80 = !lean_is_exclusive(x_79); -if (x_80 == 0) +uint8_t x_92; +x_92 = !lean_is_exclusive(x_91); +if (x_92 == 0) { -lean_object* x_81; lean_object* x_82; uint8_t x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_81 = lean_ctor_get(x_79, 0); -x_82 = lean_ctor_get(x_74, 1); -lean_inc(x_82); -lean_dec(x_74); -x_83 = 1; -x_84 = l_Lean_Name_toString(x_82, x_83); -x_85 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_85, 0, x_84); -x_86 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; -x_87 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_87, 0, x_86); -lean_ctor_set(x_87, 1, x_85); -x_88 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; -x_89 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_88); -x_90 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_81); -x_91 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; -x_92 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_92, 0, x_90); -lean_ctor_set(x_92, 1, x_91); -x_93 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_79, 0, x_93); -return x_79; -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_94 = lean_ctor_get(x_79, 0); -x_95 = lean_ctor_get(x_79, 1); -lean_inc(x_95); +lean_object* x_93; lean_object* x_94; uint8_t x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_93 = lean_ctor_get(x_91, 0); +x_94 = lean_ctor_get(x_86, 1); lean_inc(x_94); -lean_dec(x_79); -x_96 = lean_ctor_get(x_74, 1); -lean_inc(x_96); -lean_dec(x_74); -x_97 = 1; -x_98 = l_Lean_Name_toString(x_96, x_97); -x_99 = lean_alloc_ctor(2, 1, 0); +lean_dec(x_86); +x_95 = 1; +x_96 = l_Lean_Name_toString(x_94, x_95); +x_97 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_97, 0, x_96); +x_98 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +x_99 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_99, 0, x_98); -x_100 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +lean_ctor_set(x_99, 1, x_97); +x_100 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; x_101 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_99); -x_102 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; -x_103 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_103, 0, x_101); -lean_ctor_set(x_103, 1, x_102); +lean_ctor_set(x_101, 0, x_99); +lean_ctor_set(x_101, 1, x_100); +x_102 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_102, 0, x_101); +lean_ctor_set(x_102, 1, x_93); +x_103 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; x_104 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_104, 0, x_103); -lean_ctor_set(x_104, 1, x_94); -x_105 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; -x_106 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_105); -x_107 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_107, 0, x_106); -x_108 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_108, 0, x_107); -lean_ctor_set(x_108, 1, x_95); -return x_108; +lean_ctor_set(x_104, 0, x_102); +lean_ctor_set(x_104, 1, x_103); +x_105 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set(x_91, 0, x_105); +return x_91; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; uint8_t x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_106 = lean_ctor_get(x_91, 0); +x_107 = lean_ctor_get(x_91, 1); +lean_inc(x_107); +lean_inc(x_106); +lean_dec(x_91); +x_108 = lean_ctor_get(x_86, 1); +lean_inc(x_108); +lean_dec(x_86); +x_109 = 1; +x_110 = l_Lean_Name_toString(x_108, x_109); +x_111 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_111, 0, x_110); +x_112 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__2; +x_113 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_111); +x_114 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__8; +x_115 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_115, 0, x_113); +lean_ctor_set(x_115, 1, x_114); +x_116 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_106); +x_117 = l_Lean_Elab_Info_fmtHover_x3f_fmtTerm_x3f___closed__4; +x_118 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_118, 0, x_116); +lean_ctor_set(x_118, 1, x_117); +x_119 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_119, 0, x_118); +x_120 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_120, 0, x_119); +lean_ctor_set(x_120, 1, x_107); +return x_120; } } else { -uint8_t x_109; -lean_dec(x_74); -x_109 = !lean_is_exclusive(x_79); -if (x_109 == 0) +uint8_t x_121; +lean_dec(x_86); +x_121 = !lean_is_exclusive(x_91); +if (x_121 == 0) { -return x_79; +return x_91; } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_110 = lean_ctor_get(x_79, 0); -x_111 = lean_ctor_get(x_79, 1); -lean_inc(x_111); -lean_inc(x_110); -lean_dec(x_79); -x_112 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_112, 0, x_110); -lean_ctor_set(x_112, 1, x_111); -return x_112; +lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_122 = lean_ctor_get(x_91, 0); +x_123 = lean_ctor_get(x_91, 1); +lean_inc(x_123); +lean_inc(x_122); +lean_dec(x_91); +x_124 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_124, 0, x_122); +lean_ctor_set(x_124, 1, x_123); +return x_124; } } } else { -uint8_t x_113; -lean_dec(x_74); +uint8_t x_125; +lean_dec(x_86); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_113 = !lean_is_exclusive(x_76); -if (x_113 == 0) +x_125 = !lean_is_exclusive(x_88); +if (x_125 == 0) { -return x_76; +return x_88; } else { -lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_114 = lean_ctor_get(x_76, 0); -x_115 = lean_ctor_get(x_76, 1); -lean_inc(x_115); -lean_inc(x_114); -lean_dec(x_76); -x_116 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_116, 0, x_114); -lean_ctor_set(x_116, 1, x_115); -return x_116; +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_ctor_get(x_88, 0); +x_127 = lean_ctor_get(x_88, 1); +lean_inc(x_127); +lean_inc(x_126); +lean_dec(x_88); +x_128 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_128, 0, x_126); +lean_ctor_set(x_128, 1, x_127); +return x_128; } } } default: { -lean_object* x_117; lean_object* x_118; +lean_object* x_129; lean_object* x_130; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_117 = lean_box(0); -x_118 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_118, 0, x_117); -lean_ctor_set(x_118, 1, x_6); -return x_118; +x_129 = lean_box(0); +x_130 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_130, 0, x_129); +lean_ctor_set(x_130, 1, x_6); +return x_130; } } } @@ -7432,6 +7463,7 @@ return x_5; lean_object* initialize_Init(lean_object*); lean_object* initialize_Lean_DocString(lean_object*); lean_object* initialize_Lean_Elab_InfoTree(lean_object*); +lean_object* initialize_Lean_PrettyPrinter_Delaborator_Options(lean_object*); lean_object* initialize_Lean_Util_Sorry(lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Server_InfoUtils(lean_object* w) { @@ -7447,6 +7479,9 @@ lean_dec_ref(res); res = initialize_Lean_Elab_InfoTree(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_PrettyPrinter_Delaborator_Options(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Lean_Util_Sorry(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Lean/Server/Requests.c b/stage0/stdlib/Lean/Server/Requests.c index f0ebab8438..11295e9790 100644 --- a/stage0/stdlib/Lean/Server/Requests.c +++ b/stage0/stdlib/Lean/Server/Requests.c @@ -16,50 +16,55 @@ extern "C" { static lean_object* l_Lean_Server_handleLspRequest___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_instHashableString; +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Server_handleLspRequest___closed__2; -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_instInhabitedRequestM___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask(lean_object*, lean_object*); lean_object* lean_io_error_to_string(lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1___rarg(lean_object*); static lean_object* l_Lean_Server_instInhabitedRequestM___closed__2; -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Server_RequestError_methodNotFound___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_instInhabitedRequestM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Server_parseRequestParams___rarg___closed__1; static lean_object* l_Lean_Server_instInhabitedRequestM___closed__1; size_t lean_usize_sub(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4; lean_object* lean_st_ref_get(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_asTask___rarg___lambda__1(lean_object*); +static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__2; +static lean_object* l_Lean_Server_instInhabitedRequestM___closed__3; lean_object* lean_array_get_size(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); +static lean_object* l_Lean_Server_instInhabitedRequestM___closed__4; +static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2; size_t lean_usize_shift_right(size_t, size_t); +static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4; LEAN_EXPORT lean_object* l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2(lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_Requests_0__Lean_Server_lookupLspRequestHandler(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object*); size_t lean_uint64_to_usize(uint64_t); -LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494_(lean_object*); lean_object* l_Except_map___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_RequestM_asTask___rarg___closed__1; lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_Json_compress(lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_routeLspRequest(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1(lean_object*); +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_parseRequestParams___rarg___closed__2; lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1___boxed(lean_object*, lean_object*); lean_object* lean_io_as_task(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_withWaitFindSnap(lean_object*); static lean_object* l_Lean_Server_registerLspRequestHandler___lambda__4___closed__2; lean_object* lean_task_map(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_handleLspRequest(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_registerLspRequestHandler___lambda__4___closed__1; -static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1; LEAN_EXPORT lean_object* l_Lean_Server_requestHandlers; LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); @@ -69,44 +74,45 @@ LEAN_EXPORT lean_object* l_Lean_Server_instInhabitedRequestM(lean_object*); size_t lean_usize_shift_left(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Server_RequestError_toLspResponseError(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_mapTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2; -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object*, size_t, lean_object*); -static lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1; -static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5; +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentHashMap_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Task_Priority_default; lean_object* l_String_decEq___boxed(lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3; -LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5; +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM(lean_object*); lean_object* lean_io_bind_task(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_asTask(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestError_instCoeErrorRequestError(lean_object*); LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestError_fileChanged; -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3; lean_object* l_instBEq___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__1; static lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_RequestM_withWaitFindSnap___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1; LEAN_EXPORT lean_object* l_Lean_Server_RequestM_readDoc___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1; lean_object* lean_io_initializing(lean_object*); static lean_object* l_Lean_Server_parseRequestParams___rarg___closed__3; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_RequestM_asTask___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1(lean_object*); lean_object* l_Std_PersistentHashMap_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_RequestError_fileChanged___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams(lean_object*); lean_object* l_IO_mkRef___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestError_toLspResponseError___boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2___closed__1; +static lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1; lean_object* lean_usize_to_nat(size_t); static lean_object* l_Lean_Server_RequestError_fileChanged___closed__1; lean_object* l_EIO_toBaseIO___rarg(lean_object*, lean_object*); @@ -116,10 +122,13 @@ static lean_object* l_Lean_Server_registerLspRequestHandler___closed__1; lean_object* lean_io_map_task(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_task_pure(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___rarg(lean_object*, lean_object*); +static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_mapTask___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM___rarg___boxed(lean_object*, lean_object*, lean_object*); uint64_t lean_string_hash(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_RequestM_readDoc(lean_object*, lean_object*); -static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__2; uint8_t lean_string_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* _init_l_Lean_Server_RequestError_fileChanged___closed__1() { @@ -365,11 +374,32 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } +static lean_object* _init_l_Lean_Server_instInhabitedRequestM___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Server_instInhabitedRequestM___closed__2; +x_2 = lean_io_error_to_string(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Server_instInhabitedRequestM___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; +x_1 = 4; +x_2 = l_Lean_Server_instInhabitedRequestM___closed__3; +x_3 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_1); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Server_instInhabitedRequestM(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Server_instInhabitedRequestM___closed__2; +x_2 = l_Lean_Server_instInhabitedRequestM___closed__4; x_3 = lean_alloc_closure((void*)(l_Lean_Server_instInhabitedRequestM___lambda__1___boxed), 3, 1); lean_closure_set(x_3, 0, x_2); return x_3; @@ -384,18 +414,97 @@ lean_dec(x_2); return x_4; } } +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_apply_1(x_1, x_3); +if (lean_obj_tag(x_4) == 0) +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_4); +if (x_5 == 0) +{ +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_ctor_get(x_4, 0); +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +lean_inc(x_6); +lean_dec(x_4); +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_6); +lean_ctor_set(x_8, 1, x_7); +return x_8; +} +} +else +{ +uint8_t x_9; +x_9 = !lean_is_exclusive(x_4); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_4, 0); +x_11 = lean_io_error_to_string(x_10); +x_12 = 4; +x_13 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set_uint8(x_13, sizeof(void*)*1, x_12); +lean_ctor_set(x_4, 0, x_13); +return x_4; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_4, 0); +x_15 = lean_ctor_get(x_4, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_4); +x_16 = lean_io_error_to_string(x_14); +x_17 = 4; +x_18 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set_uint8(x_18, sizeof(void*)*1, x_17); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_15); +return x_19; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Server_instMonadLiftIORequestM___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Server_instMonadLiftIORequestM___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Server_instMonadLiftIORequestM___rarg(x_1, x_2, x_3); +lean_dec(x_2); +return x_4; +} +} LEAN_EXPORT lean_object* l_Lean_Server_RequestM_readDoc(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; +lean_object* x_3; lean_object* x_4; x_3 = lean_ctor_get(x_1, 2); lean_inc(x_3); -x_4 = lean_alloc_ctor(1, 1, 0); +x_4 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_4, 0, x_3); -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_4); -lean_ctor_set(x_5, 1, x_2); -return x_5; +lean_ctor_set(x_4, 1, x_2); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Server_RequestM_readDoc___boxed(lean_object* x_1, lean_object* x_2) { @@ -407,7 +516,7 @@ lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_asTask___rarg___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1___rarg(lean_object* x_1) { _start: { if (lean_obj_tag(x_1) == 0) @@ -416,48 +525,46 @@ uint8_t x_2; x_2 = !lean_is_exclusive(x_1); if (x_2 == 0) { -lean_object* x_3; lean_object* x_4; uint8_t x_5; lean_object* x_6; -x_3 = lean_ctor_get(x_1, 0); -x_4 = lean_io_error_to_string(x_3); -x_5 = 4; -x_6 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_6, 0, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*1, x_5); -lean_ctor_set(x_1, 0, x_6); return x_1; } else { -lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; -x_7 = lean_ctor_get(x_1, 0); -lean_inc(x_7); +lean_object* x_3; lean_object* x_4; +x_3 = lean_ctor_get(x_1, 0); +lean_inc(x_3); lean_dec(x_1); -x_8 = lean_io_error_to_string(x_7); -x_9 = 4; -x_10 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_10, 0, x_8); -lean_ctor_set_uint8(x_10, sizeof(void*)*1, x_9); -x_11 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_11, 0, x_10); -return x_11; +x_4 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_4, 0, x_3); +return x_4; } } else { -lean_object* x_12; -x_12 = lean_ctor_get(x_1, 0); -lean_inc(x_12); +uint8_t x_5; +x_5 = !lean_is_exclusive(x_1); +if (x_5 == 0) +{ +return x_1; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); lean_dec(x_1); -return x_12; +x_7 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_7, 0, x_6); +return x_7; } } } -static lean_object* _init_l_Lean_Server_RequestM_asTask___rarg___closed__1() { +} +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1(lean_object* x_1) { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_asTask___rarg___lambda__1), 1, 0); -return x_1; +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1___rarg), 1, 0); +return x_2; } } LEAN_EXPORT lean_object* l_Lean_Server_RequestM_asTask___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -472,31 +579,27 @@ x_7 = lean_io_as_task(x_5, x_6, x_3); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_9; lean_object* x_10; lean_object* x_11; x_9 = lean_ctor_get(x_7, 0); -x_10 = l_Lean_Server_RequestM_asTask___rarg___closed__1; +x_10 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1___rarg), 1, 0); x_11 = lean_task_map(x_10, x_9, x_6); -x_12 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_7, 0, x_12); +lean_ctor_set(x_7, 0, x_11); return x_7; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_ctor_get(x_7, 0); -x_14 = lean_ctor_get(x_7, 1); -lean_inc(x_14); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_12 = lean_ctor_get(x_7, 0); +x_13 = lean_ctor_get(x_7, 1); lean_inc(x_13); +lean_inc(x_12); lean_dec(x_7); -x_15 = l_Lean_Server_RequestM_asTask___rarg___closed__1; -x_16 = lean_task_map(x_15, x_13, x_6); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_14); -return x_18; +x_14 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_asTask___spec__1___rarg), 1, 0); +x_15 = lean_task_map(x_14, x_12, x_6); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_13); +return x_16; } } } @@ -508,6 +611,57 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_asTask___rarg), 3, 0); return x_2; } } +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1___rarg(lean_object* x_1) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_2; +x_2 = !lean_is_exclusive(x_1); +if (x_2 == 0) +{ +return x_1; +} +else +{ +lean_object* x_3; lean_object* x_4; +x_3 = lean_ctor_get(x_1, 0); +lean_inc(x_3); +lean_dec(x_1); +x_4 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_4, 0, x_3); +return x_4; +} +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_1); +if (x_5 == 0) +{ +return x_1; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +lean_dec(x_1); +x_7 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_7, 0, x_6); +return x_7; +} +} +} +} +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1___rarg), 1, 0); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Server_RequestM_mapTask___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -586,31 +740,27 @@ x_7 = lean_io_map_task(x_5, x_1, x_6, x_4); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_9; lean_object* x_10; lean_object* x_11; x_9 = lean_ctor_get(x_7, 0); -x_10 = l_Lean_Server_RequestM_asTask___rarg___closed__1; +x_10 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1___rarg), 1, 0); x_11 = lean_task_map(x_10, x_9, x_6); -x_12 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_7, 0, x_12); +lean_ctor_set(x_7, 0, x_11); return x_7; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_ctor_get(x_7, 0); -x_14 = lean_ctor_get(x_7, 1); -lean_inc(x_14); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_12 = lean_ctor_get(x_7, 0); +x_13 = lean_ctor_get(x_7, 1); lean_inc(x_13); +lean_inc(x_12); lean_dec(x_7); -x_15 = l_Lean_Server_RequestM_asTask___rarg___closed__1; -x_16 = lean_task_map(x_15, x_13, x_6); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_14); -return x_18; +x_14 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_RequestM_mapTask___spec__1___rarg), 1, 0); +x_15 = lean_task_map(x_14, x_12, x_6); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_13); +return x_16; } } } @@ -622,164 +772,63 @@ x_3 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_mapTask___rarg), 4, 0); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_bindTask___rarg___lambda__1), 1, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; x_5 = lean_apply_3(x_1, x_3, x_2, x_4); if (lean_obj_tag(x_5) == 0) { -lean_object* x_6; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) +uint8_t x_6; +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) { -uint8_t x_7; -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) -{ -lean_object* x_8; uint8_t x_9; -x_8 = lean_ctor_get(x_5, 0); -lean_dec(x_8); -x_9 = !lean_is_exclusive(x_6); -if (x_9 == 0) -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_10, 0, x_6); -x_11 = lean_task_pure(x_10); -lean_ctor_set(x_5, 0, x_11); return x_5; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -x_13 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_13, 0, x_12); -x_14 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_14, 0, x_13); -x_15 = lean_task_pure(x_14); -lean_ctor_set(x_5, 0, x_15); -return x_5; -} -} -else -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_16 = lean_ctor_get(x_5, 1); -lean_inc(x_16); +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_5, 0); +x_8 = lean_ctor_get(x_5, 1); +lean_inc(x_8); +lean_inc(x_7); lean_dec(x_5); -x_17 = lean_ctor_get(x_6, 0); -lean_inc(x_17); -if (lean_is_exclusive(x_6)) { - lean_ctor_release(x_6, 0); - x_18 = x_6; -} else { - lean_dec_ref(x_6); - x_18 = lean_box(0); -} -if (lean_is_scalar(x_18)) { - x_19 = lean_alloc_ctor(0, 1, 0); -} else { - x_19 = x_18; -} -lean_ctor_set(x_19, 0, x_17); -x_20 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_20, 0, x_19); -x_21 = lean_task_pure(x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_16); -return x_22; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_7); +lean_ctor_set(x_9, 1, x_8); +return x_9; } } else { -uint8_t x_23; -x_23 = !lean_is_exclusive(x_5); -if (x_23 == 0) +uint8_t x_10; +x_10 = !lean_is_exclusive(x_5); +if (x_10 == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_24 = lean_ctor_get(x_5, 0); -lean_dec(x_24); -x_25 = lean_ctor_get(x_6, 0); -lean_inc(x_25); -lean_dec(x_6); -x_26 = l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1; -x_27 = l_Task_Priority_default; -x_28 = lean_task_map(x_26, x_25, x_27); -lean_ctor_set(x_5, 0, x_28); -return x_5; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_29 = lean_ctor_get(x_5, 1); -lean_inc(x_29); -lean_dec(x_5); -x_30 = lean_ctor_get(x_6, 0); -lean_inc(x_30); -lean_dec(x_6); -x_31 = l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1; -x_32 = l_Task_Priority_default; -x_33 = lean_task_map(x_31, x_30, x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_29); -return x_34; -} -} -} -else -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_5); -if (x_35 == 0) -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_5, 0); -x_37 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_37, 0, x_36); -x_38 = lean_task_pure(x_37); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_5, 0); +x_12 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_12, 0, x_11); +x_13 = lean_task_pure(x_12); lean_ctor_set_tag(x_5, 0); -lean_ctor_set(x_5, 0, x_38); +lean_ctor_set(x_5, 0, x_13); return x_5; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_ctor_get(x_5, 0); -x_40 = lean_ctor_get(x_5, 1); -lean_inc(x_40); -lean_inc(x_39); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_5, 0); +x_15 = lean_ctor_get(x_5, 1); +lean_inc(x_15); +lean_inc(x_14); lean_dec(x_5); -x_41 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_41, 0, x_39); -x_42 = lean_task_pure(x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_40); -return x_43; +x_16 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_16, 0, x_14); +x_17 = lean_task_pure(x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_15); +return x_18; } } } @@ -788,7 +837,7 @@ LEAN_EXPORT lean_object* l_Lean_Server_RequestM_bindTask___rarg(lean_object* x_1 _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_5 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_bindTask___rarg___lambda__2), 4, 2); +x_5 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_bindTask___rarg___lambda__1), 4, 2); lean_closure_set(x_5, 0, x_2); lean_closure_set(x_5, 1, x_3); x_6 = l_Task_Priority_default; @@ -796,31 +845,20 @@ x_7 = lean_io_bind_task(x_1, x_5, x_6, x_4); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_9 = lean_ctor_get(x_7, 0); -x_10 = l_Lean_Server_RequestM_asTask___rarg___closed__1; -x_11 = lean_task_map(x_10, x_9, x_6); -x_12 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_7, 0, x_12); return x_7; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_ctor_get(x_7, 0); -x_14 = lean_ctor_get(x_7, 1); -lean_inc(x_14); -lean_inc(x_13); +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_ctor_get(x_7, 0); +x_10 = lean_ctor_get(x_7, 1); +lean_inc(x_10); +lean_inc(x_9); lean_dec(x_7); -x_15 = l_Lean_Server_RequestM_asTask___rarg___closed__1; -x_16 = lean_task_map(x_15, x_13, x_6); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_14); -return x_18; +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_9); +lean_ctor_set(x_11, 1, x_10); +return x_11; } } } @@ -889,7 +927,24 @@ x_4 = lean_task_map(x_2, x_1, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_2) == 0) @@ -927,17 +982,20 @@ return x_12; } else { -lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_object* x_13; lean_object* x_14; x_13 = lean_ctor_get(x_2, 0); lean_inc(x_13); lean_dec(x_2); x_14 = l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1(x_1, x_13, x_3); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; x_15 = !lean_is_exclusive(x_14); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_16 = lean_ctor_get(x_14, 0); -x_17 = l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1; +x_17 = l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1; x_18 = l_Task_Priority_default; x_19 = lean_task_map(x_17, x_16, x_18); lean_ctor_set(x_14, 0, x_19); @@ -951,7 +1009,7 @@ x_21 = lean_ctor_get(x_14, 1); lean_inc(x_21); lean_inc(x_20); lean_dec(x_14); -x_22 = l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1; +x_22 = l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1; x_23 = l_Task_Priority_default; x_24 = lean_task_map(x_22, x_20, x_23); x_25 = lean_alloc_ctor(0, 2, 0); @@ -960,6 +1018,29 @@ lean_ctor_set(x_25, 1, x_21); return x_25; } } +else +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_14); +if (x_26 == 0) +{ +return x_14; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_14, 0); +x_28 = lean_ctor_get(x_14, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_14); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} } } static lean_object* _init_l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__1() { @@ -1022,14 +1103,17 @@ return x_12; } case 1: { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_13 = lean_ctor_get(x_2, 0); lean_inc(x_13); lean_dec(x_2); -x_14 = lean_alloc_closure((void*)(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__1), 3, 1); +x_14 = lean_alloc_closure((void*)(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2), 3, 1); lean_closure_set(x_14, 0, x_1); x_15 = l_Task_Priority_default; x_16 = lean_io_bind_task(x_13, x_14, x_15, x_3); +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_17; x_17 = !lean_is_exclusive(x_16); if (x_17 == 0) { @@ -1056,29 +1140,42 @@ lean_ctor_set(x_25, 1, x_22); return x_25; } } +else +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_16); +if (x_26 == 0) +{ +return x_16; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_16, 0); +x_28 = lean_ctor_get(x_16, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_16); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} default: { -lean_object* x_26; lean_object* x_27; +lean_object* x_30; lean_object* x_31; lean_dec(x_1); -x_26 = l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2; -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_3); -return x_27; +x_30 = l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2; +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_3); +return x_31; } } } } -static lean_object* _init_l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_RequestError_fileChanged; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { @@ -1095,8 +1192,8 @@ case 0: lean_object* x_7; lean_object* x_8; lean_dec(x_4); lean_dec(x_1); -x_7 = l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1; -x_8 = lean_alloc_ctor(0, 2, 0); +x_7 = l_Lean_Server_RequestError_fileChanged; +x_8 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_8, 0, x_7); lean_ctor_set(x_8, 1, x_5); return x_8; @@ -1109,41 +1206,46 @@ return x_9; } default: { -lean_object* x_10; lean_object* x_11; +lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; lean_dec(x_4); lean_dec(x_1); x_10 = lean_ctor_get(x_6, 0); lean_inc(x_10); lean_dec(x_6); -x_11 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_5); -return x_11; +x_11 = lean_io_error_to_string(x_10); +x_12 = 4; +x_13 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set_uint8(x_13, sizeof(void*)*1, x_12); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_5); +return x_14; } } } else { -lean_object* x_12; -x_12 = lean_ctor_get(x_3, 0); -lean_inc(x_12); +lean_object* x_15; +x_15 = lean_ctor_get(x_3, 0); +lean_inc(x_15); lean_dec(x_3); -if (lean_obj_tag(x_12) == 0) +if (lean_obj_tag(x_15) == 0) { -lean_object* x_13; +lean_object* x_16; lean_dec(x_2); -x_13 = lean_apply_2(x_1, x_4, x_5); -return x_13; +x_16 = lean_apply_2(x_1, x_4, x_5); +return x_16; } else { -lean_object* x_14; lean_object* x_15; +lean_object* x_17; lean_object* x_18; lean_dec(x_1); -x_14 = lean_ctor_get(x_12, 0); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_apply_3(x_2, x_14, x_4, x_5); -return x_15; +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_apply_3(x_2, x_17, x_4, x_5); +return x_18; } } } @@ -1176,7 +1278,7 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Server_RequestM_withWaitFindSnap___rarg) return x_2; } } -static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1() { +static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1() { _start: { lean_object* x_1; @@ -1184,17 +1286,17 @@ x_1 = lean_alloc_closure((void*)(l_String_decEq___boxed), 2, 0); return x_1; } } -static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2() { +static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1; +x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1; x_2 = lean_alloc_closure((void*)(l_instBEq___rarg), 3, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3() { +static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3() { _start: { lean_object* x_1; @@ -1202,21 +1304,21 @@ x_1 = l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); return x_1; } } -static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4() { +static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3; +x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5() { +static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4; +x_1 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -1224,16 +1326,49 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5; +x_2 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5; x_3 = l_IO_mkRef___rarg(x_2, x_1); return x_3; } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; uint8_t x_7; @@ -1273,7 +1408,7 @@ return x_14; } } } -static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__1() { +static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__1() { _start: { size_t x_1; size_t x_2; size_t x_3; @@ -1283,17 +1418,17 @@ x_3 = lean_usize_shift_left(x_1, x_2); return x_3; } } -static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__2() { +static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__2() { _start: { size_t x_1; size_t x_2; size_t x_3; x_1 = 1; -x_2 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__1; +x_2 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__1; x_3 = lean_usize_sub(x_2, x_1); return x_3; } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3(lean_object* x_1, size_t x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_1) == 0) @@ -1303,7 +1438,7 @@ x_4 = lean_ctor_get(x_1, 0); lean_inc(x_4); lean_dec(x_1); x_5 = 5; -x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__2; +x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__2; x_7 = lean_usize_land(x_2, x_6); x_8 = lean_usize_to_nat(x_7); x_9 = lean_box(2); @@ -1349,14 +1484,14 @@ x_18 = lean_ctor_get(x_1, 1); lean_inc(x_18); lean_dec(x_1); x_19 = lean_unsigned_to_nat(0u); -x_20 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3(x_17, x_18, lean_box(0), x_19, x_3); +x_20 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4(x_17, x_18, lean_box(0), x_19, x_3); lean_dec(x_18); lean_dec(x_17); return x_20; } } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint64_t x_4; size_t x_5; uint8_t x_6; @@ -1365,7 +1500,7 @@ lean_inc(x_3); lean_dec(x_1); x_4 = lean_string_hash(x_2); x_5 = lean_uint64_to_usize(x_4); -x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2(x_3, x_5, x_2); +x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3(x_3, x_5, x_2); lean_dec(x_2); return x_6; } @@ -1424,194 +1559,99 @@ return x_13; LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { -lean_object* x_7; +lean_object* x_7; lean_object* x_8; x_7 = l_Lean_Server_parseRequestParams___rarg(x_1, x_4); -if (lean_obj_tag(x_7) == 0) +x_8 = l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg(x_7, x_5, x_6); +lean_dec(x_7); +if (lean_obj_tag(x_8) == 0) { -uint8_t x_8; +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = lean_apply_3(x_2, x_9, x_5, x_10); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); +lean_closure_set(x_14, 0, x_3); +x_15 = l_Task_Priority_default; +x_16 = lean_task_map(x_14, x_13, x_15); +lean_ctor_set(x_11, 0, x_16); +return x_11; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_17 = lean_ctor_get(x_11, 0); +x_18 = lean_ctor_get(x_11, 1); +lean_inc(x_18); +lean_inc(x_17); +lean_dec(x_11); +x_19 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); +lean_closure_set(x_19, 0, x_3); +x_20 = l_Task_Priority_default; +x_21 = lean_task_map(x_19, x_17, x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_18); +return x_22; +} +} +else +{ +uint8_t x_23; +lean_dec(x_3); +x_23 = !lean_is_exclusive(x_11); +if (x_23 == 0) +{ +return x_11; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_11, 0); +x_25 = lean_ctor_get(x_11, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_11); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +else +{ +uint8_t x_27; lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_8 = !lean_is_exclusive(x_7); -if (x_8 == 0) +x_27 = !lean_is_exclusive(x_8); +if (x_27 == 0) { -lean_object* x_9; -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_7); -lean_ctor_set(x_9, 1, x_6); -return x_9; +return x_8; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_7, 0); -lean_inc(x_10); -lean_dec(x_7); -x_11 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_11, 0, x_10); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_6); -return x_12; -} -} -else -{ -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_7, 0); -lean_inc(x_13); -lean_dec(x_7); -x_14 = lean_apply_3(x_2, x_13, x_5, x_6); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) -{ -uint8_t x_16; -lean_dec(x_3); -x_16 = !lean_is_exclusive(x_14); -if (x_16 == 0) -{ -lean_object* x_17; uint8_t x_18; -x_17 = lean_ctor_get(x_14, 0); -lean_dec(x_17); -x_18 = !lean_is_exclusive(x_15); -if (x_18 == 0) -{ -return x_14; -} -else -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_15, 0); -lean_inc(x_19); -lean_dec(x_15); -x_20 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_14, 0, x_20); -return x_14; -} -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_21 = lean_ctor_get(x_14, 1); -lean_inc(x_21); -lean_dec(x_14); -x_22 = lean_ctor_get(x_15, 0); -lean_inc(x_22); -if (lean_is_exclusive(x_15)) { - lean_ctor_release(x_15, 0); - x_23 = x_15; -} else { - lean_dec_ref(x_15); - x_23 = lean_box(0); -} -if (lean_is_scalar(x_23)) { - x_24 = lean_alloc_ctor(0, 1, 0); -} else { - x_24 = x_23; -} -lean_ctor_set(x_24, 0, x_22); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -return x_25; -} -} -else -{ -uint8_t x_26; -x_26 = !lean_is_exclusive(x_14); -if (x_26 == 0) -{ -lean_object* x_27; uint8_t x_28; -x_27 = lean_ctor_get(x_14, 0); -lean_dec(x_27); -x_28 = !lean_is_exclusive(x_15); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_29 = lean_ctor_get(x_15, 0); -x_30 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); -lean_closure_set(x_30, 0, x_3); -x_31 = l_Task_Priority_default; -x_32 = lean_task_map(x_30, x_29, x_31); -lean_ctor_set(x_15, 0, x_32); -return x_14; -} -else -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_33 = lean_ctor_get(x_15, 0); -lean_inc(x_33); -lean_dec(x_15); -x_34 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); -lean_closure_set(x_34, 0, x_3); -x_35 = l_Task_Priority_default; -x_36 = lean_task_map(x_34, x_33, x_35); -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_14, 0, x_37); -return x_14; -} -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_38 = lean_ctor_get(x_14, 1); -lean_inc(x_38); -lean_dec(x_14); -x_39 = lean_ctor_get(x_15, 0); -lean_inc(x_39); -if (lean_is_exclusive(x_15)) { - lean_ctor_release(x_15, 0); - x_40 = x_15; -} else { - lean_dec_ref(x_15); - x_40 = lean_box(0); -} -x_41 = lean_alloc_closure((void*)(l_Except_map___rarg), 2, 1); -lean_closure_set(x_41, 0, x_3); -x_42 = l_Task_Priority_default; -x_43 = lean_task_map(x_41, x_39, x_42); -if (lean_is_scalar(x_40)) { - x_44 = lean_alloc_ctor(1, 1, 0); -} else { - x_44 = x_40; -} -lean_ctor_set(x_44, 0, x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_38); -return x_45; -} -} -} -else -{ -uint8_t x_46; -lean_dec(x_3); -x_46 = !lean_is_exclusive(x_14); -if (x_46 == 0) -{ -return x_14; -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_14, 0); -x_48 = lean_ctor_get(x_14, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_14); -x_49 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -return x_49; -} +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_8, 0); +x_29 = lean_ctor_get(x_8, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_8); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } } @@ -1638,7 +1678,7 @@ lean_dec(x_11); x_14 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_14, 0, x_8); lean_ctor_set(x_14, 1, x_9); -x_15 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2; +x_15 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2; x_16 = l_instHashableString; x_17 = l_Std_PersistentHashMap_insert___rarg(x_15, x_16, x_12, x_5, x_14); x_18 = lean_st_ref_set(x_10, x_17, x_13); @@ -1692,7 +1732,7 @@ lean_object* x_11; lean_object* x_12; uint8_t x_13; x_11 = lean_ctor_get(x_9, 0); x_12 = lean_ctor_get(x_9, 1); lean_inc(x_5); -x_13 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_11, x_5); +x_13 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_11, x_5); if (x_13 == 0) { lean_object* x_14; lean_object* x_15; @@ -1729,7 +1769,7 @@ lean_inc(x_22); lean_inc(x_21); lean_dec(x_9); lean_inc(x_5); -x_23 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_21, x_5); +x_23 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_21, x_5); if (x_23 == 0) { lean_object* x_24; lean_object* x_25; @@ -1862,11 +1902,21 @@ return x_32; } } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_registerLspRequestHandler___spec__1___rarg(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { uint8_t x_6; lean_object* x_7; -x_6 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__3(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerLspRequestHandler___spec__4(x_1, x_2, x_3, x_4, x_5); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); @@ -1874,23 +1924,23 @@ x_7 = lean_box(x_6); return x_7; } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; uint8_t x_5; lean_object* x_6; x_4 = lean_unbox_usize(x_2); lean_dec(x_2); -x_5 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2(x_1, x_4, x_3); +x_5 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3(x_1, x_4, x_3); lean_dec(x_3); x_6 = lean_box(x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_1, x_2); +x_3 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_1, x_2); x_4 = lean_box(x_3); return x_4; } @@ -1915,7 +1965,7 @@ if (x_5 == 0) { lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_6 = lean_ctor_get(x_4, 0); -x_7 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2; +x_7 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2; x_8 = l_instHashableString; x_9 = l_Std_PersistentHashMap_find_x3f___rarg(x_7, x_8, x_6, x_1); lean_ctor_set(x_4, 0, x_9); @@ -1929,7 +1979,7 @@ x_11 = lean_ctor_get(x_4, 1); lean_inc(x_11); lean_inc(x_10); lean_dec(x_4); -x_12 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2; +x_12 = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2; x_13 = l_instHashableString; x_14 = l_Std_PersistentHashMap_find_x3f___rarg(x_12, x_13, x_10, x_1); x_15 = lean_alloc_ctor(0, 2, 0); @@ -2053,7 +2103,7 @@ lean_dec(x_2); x_7 = !lean_is_exclusive(x_5); if (x_7 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; x_8 = lean_ctor_get(x_5, 0); lean_dec(x_8); x_9 = l_Lean_Server_handleLspRequest___closed__1; @@ -2063,44 +2113,54 @@ x_11 = l_Lean_Server_handleLspRequest___closed__2; x_12 = lean_string_append(x_10, x_11); x_13 = lean_alloc_ctor(18, 1, 0); lean_ctor_set(x_13, 0, x_12); +x_14 = lean_io_error_to_string(x_13); +x_15 = 4; +x_16 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set_uint8(x_16, sizeof(void*)*1, x_15); lean_ctor_set_tag(x_5, 1); -lean_ctor_set(x_5, 0, x_13); +lean_ctor_set(x_5, 0, x_16); return x_5; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_14 = lean_ctor_get(x_5, 1); -lean_inc(x_14); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; +x_17 = lean_ctor_get(x_5, 1); +lean_inc(x_17); lean_dec(x_5); -x_15 = l_Lean_Server_handleLspRequest___closed__1; -x_16 = lean_string_append(x_15, x_1); +x_18 = l_Lean_Server_handleLspRequest___closed__1; +x_19 = lean_string_append(x_18, x_1); lean_dec(x_1); -x_17 = l_Lean_Server_handleLspRequest___closed__2; -x_18 = lean_string_append(x_16, x_17); -x_19 = lean_alloc_ctor(18, 1, 0); -lean_ctor_set(x_19, 0, x_18); -x_20 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_14); -return x_20; +x_20 = l_Lean_Server_handleLspRequest___closed__2; +x_21 = lean_string_append(x_19, x_20); +x_22 = lean_alloc_ctor(18, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = lean_io_error_to_string(x_22); +x_24 = 4; +x_25 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set_uint8(x_25, sizeof(void*)*1, x_24); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_17); +return x_26; } } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_dec(x_1); -x_21 = lean_ctor_get(x_5, 1); -lean_inc(x_21); +x_27 = lean_ctor_get(x_5, 1); +lean_inc(x_27); lean_dec(x_5); -x_22 = lean_ctor_get(x_6, 0); -lean_inc(x_22); +x_28 = lean_ctor_get(x_6, 0); +lean_inc(x_28); lean_dec(x_6); -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = lean_apply_3(x_23, x_2, x_3, x_21); -return x_24; +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +x_30 = lean_apply_3(x_29, x_2, x_3, x_27); +return x_30; } } } @@ -2157,35 +2217,35 @@ l_Lean_Server_instInhabitedRequestM___closed__1 = _init_l_Lean_Server_instInhabi lean_mark_persistent(l_Lean_Server_instInhabitedRequestM___closed__1); l_Lean_Server_instInhabitedRequestM___closed__2 = _init_l_Lean_Server_instInhabitedRequestM___closed__2(); lean_mark_persistent(l_Lean_Server_instInhabitedRequestM___closed__2); -l_Lean_Server_RequestM_asTask___rarg___closed__1 = _init_l_Lean_Server_RequestM_asTask___rarg___closed__1(); -lean_mark_persistent(l_Lean_Server_RequestM_asTask___rarg___closed__1); -l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1 = _init_l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_RequestM_bindTask___rarg___lambda__2___closed__1); +l_Lean_Server_instInhabitedRequestM___closed__3 = _init_l_Lean_Server_instInhabitedRequestM___closed__3(); +lean_mark_persistent(l_Lean_Server_instInhabitedRequestM___closed__3); +l_Lean_Server_instInhabitedRequestM___closed__4 = _init_l_Lean_Server_instInhabitedRequestM___closed__4(); +lean_mark_persistent(l_Lean_Server_instInhabitedRequestM___closed__4); l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2___closed__1 = _init_l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2___closed__1(); lean_mark_persistent(l___private_Lean_Server_AsyncList_0__IO_AsyncList_coeErr___at_Lean_Server_RequestM_withWaitFindSnap___spec__2___closed__1); +l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1 = _init_l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1(); +lean_mark_persistent(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___lambda__2___closed__1); l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__1 = _init_l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__1(); lean_mark_persistent(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__1); l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2 = _init_l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2(); lean_mark_persistent(l_IO_AsyncList_waitFind_x3f___at_Lean_Server_RequestM_withWaitFindSnap___spec__1___closed__2); -l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1 = _init_l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Server_RequestM_withWaitFindSnap___rarg___lambda__1___closed__1); -l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1(); -lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__1); -l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2(); -lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__2); -l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3(); -lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__3); -l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4(); -lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__4); -l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5(); -lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623____closed__5); -res = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_623_(lean_io_mk_world()); +l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1(); +lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__1); +l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2(); +lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__2); +l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3(); +lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__3); +l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4(); +lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__4); +l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5 = _init_l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5(); +lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494____closed__5); +res = l_Lean_Server_initFn____x40_Lean_Server_Requests___hyg_494_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Server_requestHandlers = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Server_requestHandlers); lean_dec_ref(res); -l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__1 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__1(); -l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__2 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__2___closed__2(); +l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__1 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__1(); +l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__2 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerLspRequestHandler___spec__3___closed__2(); l_Lean_Server_registerLspRequestHandler___lambda__4___closed__1 = _init_l_Lean_Server_registerLspRequestHandler___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Server_registerLspRequestHandler___lambda__4___closed__1); l_Lean_Server_registerLspRequestHandler___lambda__4___closed__2 = _init_l_Lean_Server_registerLspRequestHandler___lambda__4___closed__2(); diff --git a/stage0/stdlib/Lean/Server/Rpc/RequestHandling.c b/stage0/stdlib/Lean/Server/Rpc/RequestHandling.c index e08d57985d..cdd4db65ae 100644 --- a/stage0/stdlib/Lean/Server/Rpc/RequestHandling.c +++ b/stage0/stdlib/Lean/Server/Rpc/RequestHandling.c @@ -13,26 +13,23 @@ #ifdef __cplusplus extern "C" { #endif +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4___boxed(lean_object*, lean_object*); extern lean_object* l_instHashableString; +uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(lean_object*, lean_object*); uint8_t lean_uint64_dec_eq(uint64_t, uint64_t); static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_23_(lean_object*); -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4(lean_object*, size_t, lean_object*); lean_object* l_Lean_Server_FileWorker_instMonadRpcSession___rarg(lean_object*, lean_object*); -uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__2; size_t lean_usize_sub(size_t, size_t); static lean_object* l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__1; -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__1(lean_object*); lean_object* l_id___rarg___boxed(lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); extern lean_object* l_Lean_instHashableName; uint8_t lean_name_eq(lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_23____closed__2; lean_object* lean_array_get_size(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); @@ -40,87 +37,92 @@ LEAN_EXPORT lean_object* l_Std_RBNode_find___at_Lean_Server_registerRpcCallHandl size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_rpcProcedures; static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__2; +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2; size_t lean_uint64_to_usize(uint64_t); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___boxed(lean_object*, lean_object*, lean_object*); -static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__1; +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5(lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_23____closed__1; lean_object* l_Except_map___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_Json_compress(lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1; static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___closed__1; static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3___boxed(lean_object*, lean_object*); +static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__1; static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3___closed__3; uint64_t l_Lean_Name_hash(lean_object*); lean_object* lean_task_map(lean_object*, lean_object*, lean_object*); -static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__2; uint8_t lean_uint64_dec_lt(uint64_t, uint64_t); extern lean_object* l_Lean_Server_requestHandlers; +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_RequestM_bindTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3(lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); lean_object* l_Lean_Server_RequestM_mapTask___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2(lean_object*); static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3___closed__2; static lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__3; -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6; +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentHashMap_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3; extern lean_object* l_Task_Priority_default; +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3(lean_object*, lean_object*); lean_object* l_String_decEq___boxed(lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3___closed__1; static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_23____closed__3; -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5; -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_RBNode_find___at_Lean_Server_registerRpcCallHandler___spec__1___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____closed__1; extern lean_object* l_Id_instMonadId; +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2; +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1; static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2(lean_object*); static lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__4___closed__1; static lean_object* l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____closed__2; -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6; -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_instBEq___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_StateT_instMonadStateT___rarg(lean_object*); lean_object* lean_io_initializing(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint64_t, lean_object*, lean_object*, lean_object*); +static size_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__2; lean_object* l_Lean_Server_RequestM_asTask___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3; lean_object* l_Std_PersistentHashMap_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_IO_mkRef___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2; lean_object* l_instMonadStateOfStateT___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1; -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2; -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_usize_to_nat(size_t); +static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5; lean_object* l___private_Lean_Data_Lsp_Extra_0__Lean_Lsp_fromJsonRpcCallParams____x40_Lean_Data_Lsp_Extra___hyg_1108_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_parseRequestParams___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); extern lean_object* l_Lean_Name_instBEqName; static lean_object* _init_l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_23____closed__1() { @@ -198,7 +200,7 @@ lean_inc(x_9); x_12 = l_Std_PersistentHashMap_find_x3f___rarg(x_10, x_11, x_7, x_9); if (lean_obj_tag(x_12) == 0) { -uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; +uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_dec(x_2); lean_dec(x_1); x_13 = 1; @@ -212,79 +214,76 @@ x_19 = 2; x_20 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_20, 0, x_18); lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_19); -x_21 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_5, 0, x_21); +lean_ctor_set_tag(x_5, 1); +lean_ctor_set(x_5, 0, x_20); return x_5; } else { -lean_object* x_22; uint64_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_object* x_21; uint64_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_dec(x_9); lean_free_object(x_5); -x_22 = lean_ctor_get(x_12, 0); -lean_inc(x_22); +x_21 = lean_ctor_get(x_12, 0); +lean_inc(x_21); lean_dec(x_12); -x_23 = lean_ctor_get_uint64(x_1, sizeof(void*)*3); -x_24 = lean_ctor_get(x_1, 2); -lean_inc(x_24); +x_22 = lean_ctor_get_uint64(x_1, sizeof(void*)*3); +x_23 = lean_ctor_get(x_1, 2); +lean_inc(x_23); lean_dec(x_1); -x_25 = lean_box_uint64(x_23); -x_26 = lean_apply_4(x_22, x_25, x_24, x_2, x_8); -return x_26; +x_24 = lean_box_uint64(x_22); +x_25 = lean_apply_4(x_21, x_24, x_23, x_2, x_8); +return x_25; } } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_27 = lean_ctor_get(x_5, 0); -x_28 = lean_ctor_get(x_5, 1); -lean_inc(x_28); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_5, 0); +x_27 = lean_ctor_get(x_5, 1); lean_inc(x_27); +lean_inc(x_26); lean_dec(x_5); -x_29 = lean_ctor_get(x_1, 1); -lean_inc(x_29); -x_30 = l_Lean_Name_instBEqName; -x_31 = l_Lean_instHashableName; -lean_inc(x_29); -x_32 = l_Std_PersistentHashMap_find_x3f___rarg(x_30, x_31, x_27, x_29); -if (lean_obj_tag(x_32) == 0) +x_28 = lean_ctor_get(x_1, 1); +lean_inc(x_28); +x_29 = l_Lean_Name_instBEqName; +x_30 = l_Lean_instHashableName; +lean_inc(x_28); +x_31 = l_Std_PersistentHashMap_find_x3f___rarg(x_29, x_30, x_26, x_28); +if (lean_obj_tag(x_31) == 0) { -uint8_t x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +uint8_t x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; lean_object* x_40; lean_dec(x_2); lean_dec(x_1); -x_33 = 1; -x_34 = l_Lean_Name_toString(x_29, x_33); -x_35 = l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__1; -x_36 = lean_string_append(x_35, x_34); -lean_dec(x_34); -x_37 = l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__2; -x_38 = lean_string_append(x_36, x_37); -x_39 = 2; -x_40 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set_uint8(x_40, sizeof(void*)*1, x_39); -x_41 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_41, 0, x_40); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_41); -lean_ctor_set(x_42, 1, x_28); -return x_42; +x_32 = 1; +x_33 = l_Lean_Name_toString(x_28, x_32); +x_34 = l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__1; +x_35 = lean_string_append(x_34, x_33); +lean_dec(x_33); +x_36 = l___private_Lean_Server_Rpc_RequestHandling_0__Lean_Server_handleRpcCall___closed__2; +x_37 = lean_string_append(x_35, x_36); +x_38 = 2; +x_39 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set_uint8(x_39, sizeof(void*)*1, x_38); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_27); +return x_40; } else { -lean_object* x_43; uint64_t x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_29); -x_43 = lean_ctor_get(x_32, 0); +lean_object* x_41; uint64_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_28); +x_41 = lean_ctor_get(x_31, 0); +lean_inc(x_41); +lean_dec(x_31); +x_42 = lean_ctor_get_uint64(x_1, sizeof(void*)*3); +x_43 = lean_ctor_get(x_1, 2); lean_inc(x_43); -lean_dec(x_32); -x_44 = lean_ctor_get_uint64(x_1, sizeof(void*)*3); -x_45 = lean_ctor_get(x_1, 2); -lean_inc(x_45); lean_dec(x_1); -x_46 = lean_box_uint64(x_44); -x_47 = lean_apply_4(x_43, x_46, x_45, x_2, x_28); -return x_47; +x_44 = lean_box_uint64(x_42); +x_45 = lean_apply_4(x_41, x_44, x_43, x_2, x_27); +return x_45; } } } @@ -391,6 +390,31 @@ return x_29; } } } +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__1(lean_object* x_1) { _start: { @@ -472,188 +496,95 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; +lean_object* x_5; lean_object* x_6; x_5 = l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2(x_2); -if (lean_obj_tag(x_5) == 0) +x_6 = l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3(x_5, x_3, x_4); +lean_dec(x_5); +if (lean_obj_tag(x_6) == 0) { -uint8_t x_6; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = lean_apply_3(x_1, x_7, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; +x_13 = l_Task_Priority_default; +x_14 = lean_task_map(x_12, x_11, x_13); +lean_ctor_set(x_9, 0, x_14); +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; +x_18 = l_Task_Priority_default; +x_19 = lean_task_map(x_17, x_15, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_16); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_9); +if (x_21 == 0) +{ +return x_9; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_9, 0); +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_9); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +else +{ +uint8_t x_25; lean_dec(x_3); lean_dec(x_1); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) { -lean_object* x_7; -x_7 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_7, 0, x_5); -lean_ctor_set(x_7, 1, x_4); -return x_7; +return x_6; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_5, 0); -lean_inc(x_8); -lean_dec(x_5); -x_9 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_9, 0, x_8); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_4); -return x_10; -} -} -else -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_5, 0); -lean_inc(x_11); -lean_dec(x_5); -x_12 = lean_apply_3(x_1, x_11, x_3, x_4); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) -{ -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_13, 0); -lean_inc(x_17); -lean_dec(x_13); -x_18 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_12, 0, x_18); -return x_12; -} -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_12, 1); -lean_inc(x_19); -lean_dec(x_12); -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_21 = x_13; -} else { - lean_dec_ref(x_13); - x_21 = lean_box(0); -} -if (lean_is_scalar(x_21)) { - x_22 = lean_alloc_ctor(0, 1, 0); -} else { - x_22 = x_21; -} -lean_ctor_set(x_22, 0, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -return x_23; -} -} -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_12); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_12, 0); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_13); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = lean_ctor_get(x_13, 0); -x_28 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; -x_29 = l_Task_Priority_default; -x_30 = lean_task_map(x_28, x_27, x_29); -lean_ctor_set(x_13, 0, x_30); -return x_12; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_13, 0); -lean_inc(x_31); -lean_dec(x_13); -x_32 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; -x_33 = l_Task_Priority_default; -x_34 = lean_task_map(x_32, x_31, x_33); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_12, 0, x_35); -return x_12; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_dec(x_12); -x_37 = lean_ctor_get(x_13, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_13)) { - lean_ctor_release(x_13, 0); - x_38 = x_13; -} else { - lean_dec_ref(x_13); - x_38 = lean_box(0); -} -x_39 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__2___closed__2; -x_40 = l_Task_Priority_default; -x_41 = lean_task_map(x_39, x_37, x_40); -if (lean_is_scalar(x_38)) { - x_42 = lean_alloc_ctor(1, 1, 0); -} else { - x_42 = x_38; -} -lean_ctor_set(x_42, 0, x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_36); -return x_43; -} -} -} -else -{ -uint8_t x_44; -x_44 = !lean_is_exclusive(x_12); -if (x_44 == 0) -{ -return x_12; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_12, 0); -x_46 = lean_ctor_get(x_12, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_12); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; -} +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_6, 0); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_6); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } @@ -755,7 +686,7 @@ lean_object* x_8; lean_object* x_9; uint8_t x_10; x_8 = lean_ctor_get(x_6, 0); x_9 = lean_ctor_get(x_6, 1); lean_inc(x_2); -x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_8, x_2); +x_10 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_8, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; @@ -789,7 +720,7 @@ lean_inc(x_19); lean_inc(x_18); lean_dec(x_6); lean_inc(x_2); -x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__1(x_18, x_2); +x_20 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerLspRequestHandler___spec__2(x_18, x_2); if (x_20 == 0) { lean_object* x_21; lean_object* x_22; @@ -939,6 +870,16 @@ x_4 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lea return x_4; } } +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} LEAN_EXPORT lean_object* l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -1004,7 +945,40 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_3); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_3); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; @@ -1012,112 +986,50 @@ lean_inc(x_3); x_5 = lean_apply_2(x_1, x_3, x_4); if (lean_obj_tag(x_5) == 0) { -lean_object* x_6; +lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) +x_7 = lean_ctor_get(x_5, 1); +lean_inc(x_7); +lean_dec(x_5); +x_8 = lean_apply_3(x_2, x_6, x_3, x_7); +return x_8; +} +else { -uint8_t x_7; +uint8_t x_9; lean_dec(x_3); lean_dec(x_2); -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) -{ -lean_object* x_8; uint8_t x_9; -x_8 = lean_ctor_get(x_5, 0); -lean_dec(x_8); -x_9 = !lean_is_exclusive(x_6); +x_9 = !lean_is_exclusive(x_5); if (x_9 == 0) { return x_5; } else { -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_6, 0); +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_5, 0); +x_11 = lean_ctor_get(x_5, 1); +lean_inc(x_11); lean_inc(x_10); -lean_dec(x_6); -x_11 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_5, 0, x_11); -return x_5; -} -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_5, 1); -lean_inc(x_12); lean_dec(x_5); -x_13 = lean_ctor_get(x_6, 0); -lean_inc(x_13); -if (lean_is_exclusive(x_6)) { - lean_ctor_release(x_6, 0); - x_14 = x_6; -} else { - lean_dec_ref(x_6); - x_14 = lean_box(0); -} -if (lean_is_scalar(x_14)) { - x_15 = lean_alloc_ctor(0, 1, 0); -} else { - x_15 = x_14; -} -lean_ctor_set(x_15, 0, x_13); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_12); -return x_16; -} -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_5, 1); -lean_inc(x_17); -lean_dec(x_5); -x_18 = lean_ctor_get(x_6, 0); -lean_inc(x_18); -lean_dec(x_6); -x_19 = lean_apply_3(x_2, x_18, x_3, x_17); -return x_19; -} -} -else -{ -uint8_t x_20; -lean_dec(x_3); -lean_dec(x_2); -x_20 = !lean_is_exclusive(x_5); -if (x_20 == 0) -{ -return x_5; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_5, 0); -x_22 = lean_ctor_get(x_5, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_5); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; +x_12 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; } } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2___rarg), 4, 0); +x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3___rarg), 4, 0); return x_3; } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; uint8_t x_7; @@ -1157,7 +1069,7 @@ return x_14; } } } -static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__1() { +static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__1() { _start: { size_t x_1; size_t x_2; size_t x_3; @@ -1167,17 +1079,17 @@ x_3 = lean_usize_shift_left(x_1, x_2); return x_3; } } -static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__2() { +static size_t _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__2() { _start: { size_t x_1; size_t x_2; size_t x_3; x_1 = 1; -x_2 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__1; +x_2 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__1; x_3 = lean_usize_sub(x_2, x_1); return x_3; } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4(lean_object* x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5(lean_object* x_1, size_t x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_1) == 0) @@ -1187,7 +1099,7 @@ x_4 = lean_ctor_get(x_1, 0); lean_inc(x_4); lean_dec(x_1); x_5 = 5; -x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__2; +x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__2; x_7 = lean_usize_land(x_2, x_6); x_8 = lean_usize_to_nat(x_7); x_9 = lean_box(2); @@ -1233,14 +1145,14 @@ x_18 = lean_ctor_get(x_1, 1); lean_inc(x_18); lean_dec(x_1); x_19 = lean_unsigned_to_nat(0u); -x_20 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5(x_17, x_18, lean_box(0), x_19, x_3); +x_20 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6(x_17, x_18, lean_box(0), x_19, x_3); lean_dec(x_18); lean_dec(x_17); return x_20; } } } -LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint64_t x_4; size_t x_5; uint8_t x_6; @@ -1249,22 +1161,12 @@ lean_inc(x_3); lean_dec(x_1); x_4 = l_Lean_Name_hash(x_2); x_5 = lean_uint64_to_usize(x_4); -x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4(x_3, x_5, x_2); +x_6 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5(x_3, x_5, x_2); lean_dec(x_2); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_4, 0, x_1); -lean_ctor_set(x_4, 1, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -1273,7 +1175,7 @@ x_2 = l_StateT_instMonadStateT___rarg(x_1); return x_2; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; @@ -1282,17 +1184,17 @@ x_2 = l_instMonadStateOfStateT___rarg(x_1); return x_2; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1; -x_2 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2; +x_1 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1; +x_2 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2; x_3 = l_Lean_Server_FileWorker_instMonadRpcSession___rarg(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4() { _start: { lean_object* x_1; @@ -1300,7 +1202,7 @@ x_1 = lean_mk_string("Cannot decode params in RPC call '"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5() { _start: { lean_object* x_1; @@ -1308,7 +1210,7 @@ x_1 = lean_mk_string("("); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6() { _start: { lean_object* x_1; @@ -1316,280 +1218,153 @@ x_1 = lean_mk_string(")'\n"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_8 = lean_ctor_get(x_1, 1); lean_inc(x_8); lean_dec(x_1); -x_9 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1; -x_10 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3; +x_9 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1; +x_10 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3; x_11 = lean_apply_5(x_8, lean_box(0), x_9, x_10, x_5, x_2); x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); lean_dec(x_11); if (lean_obj_tag(x_12) == 0) { -uint8_t x_13; -x_13 = !lean_is_exclusive(x_12); -if (x_13 == 0) -{ -lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; -x_14 = lean_ctor_get(x_12, 0); -x_15 = 1; -x_16 = l_Lean_Name_toString(x_3, x_15); -x_17 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4; -x_18 = lean_string_append(x_17, x_16); -lean_dec(x_16); -x_19 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5; -x_20 = lean_string_append(x_18, x_19); -x_21 = l_Lean_Json_compress(x_4); -x_22 = lean_string_append(x_20, x_21); -lean_dec(x_21); -x_23 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6; -x_24 = lean_string_append(x_22, x_23); -x_25 = lean_string_append(x_24, x_14); -lean_dec(x_14); -x_26 = l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__3; -x_27 = lean_string_append(x_25, x_26); -x_28 = 3; -x_29 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set_uint8(x_29, sizeof(void*)*1, x_28); -lean_ctor_set(x_12, 0, x_29); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_12); -lean_ctor_set(x_30, 1, x_7); -return x_30; -} -else -{ -lean_object* x_31; uint8_t x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_31 = lean_ctor_get(x_12, 0); -lean_inc(x_31); +lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); lean_dec(x_12); -x_32 = 1; -x_33 = l_Lean_Name_toString(x_3, x_32); -x_34 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4; -x_35 = lean_string_append(x_34, x_33); -lean_dec(x_33); -x_36 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5; -x_37 = lean_string_append(x_35, x_36); -x_38 = l_Lean_Json_compress(x_4); -x_39 = lean_string_append(x_37, x_38); -lean_dec(x_38); -x_40 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6; -x_41 = lean_string_append(x_39, x_40); -x_42 = lean_string_append(x_41, x_31); -lean_dec(x_31); -x_43 = l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__3; -x_44 = lean_string_append(x_42, x_43); -x_45 = 3; -x_46 = lean_alloc_ctor(0, 1, 1); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set_uint8(x_46, sizeof(void*)*1, x_45); -x_47 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_47, 0, x_46); -x_48 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_48, 0, x_47); -lean_ctor_set(x_48, 1, x_7); -return x_48; -} +x_14 = 1; +x_15 = l_Lean_Name_toString(x_3, x_14); +x_16 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4; +x_17 = lean_string_append(x_16, x_15); +lean_dec(x_15); +x_18 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5; +x_19 = lean_string_append(x_17, x_18); +x_20 = l_Lean_Json_compress(x_4); +x_21 = lean_string_append(x_19, x_20); +lean_dec(x_20); +x_22 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6; +x_23 = lean_string_append(x_21, x_22); +x_24 = lean_string_append(x_23, x_13); +lean_dec(x_13); +x_25 = l_Lean_Server_parseRequestParams___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__2___closed__3; +x_26 = lean_string_append(x_24, x_25); +x_27 = 3; +x_28 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set_uint8(x_28, sizeof(void*)*1, x_27); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_7); +return x_29; } else { -uint8_t x_49; +lean_object* x_30; lean_object* x_31; lean_dec(x_4); lean_dec(x_3); -x_49 = !lean_is_exclusive(x_12); -if (x_49 == 0) -{ -lean_object* x_50; -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_12); -lean_ctor_set(x_50, 1, x_7); -return x_50; -} -else -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_12, 0); -lean_inc(x_51); +x_30 = lean_ctor_get(x_12, 0); +lean_inc(x_30); lean_dec(x_12); -x_52 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_52, 0, x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_7); -return x_53; +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_7); +return x_31; } } } -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { if (lean_obj_tag(x_2) == 0) { -uint8_t x_5; +lean_object* x_5; lean_object* x_6; lean_dec(x_3); lean_dec(x_1); -x_5 = !lean_is_exclusive(x_2); -if (x_5 == 0) -{ -lean_object* x_6; -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_2); +x_5 = lean_ctor_get(x_2, 0); +lean_inc(x_5); +lean_dec(x_2); +x_6 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_6, 0, x_5); lean_ctor_set(x_6, 1, x_4); return x_6; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_object* x_7; lean_object* x_8; x_7 = lean_ctor_get(x_2, 0); lean_inc(x_7); lean_dec(x_2); -x_8 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_8, 0, x_7); -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_8); -lean_ctor_set(x_9, 1, x_4); -return x_9; -} -} -else -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_2, 0); -lean_inc(x_10); -lean_dec(x_2); -x_11 = lean_apply_3(x_1, x_10, x_3, x_4); -return x_11; +x_8 = lean_apply_3(x_1, x_7, x_3, x_4); +return x_8; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { if (lean_obj_tag(x_5) == 0) { -uint8_t x_8; +lean_object* x_8; lean_object* x_9; lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_8 = !lean_is_exclusive(x_5); -if (x_8 == 0) -{ -lean_object* x_9; -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_5); +x_8 = lean_ctor_get(x_5, 0); +lean_inc(x_8); +lean_dec(x_5); +x_9 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_7); return x_9; } else { -lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; x_10 = lean_ctor_get(x_5, 0); lean_inc(x_10); lean_dec(x_5); -x_11 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_11, 0, x_10); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_7); -return x_12; -} -} -else -{ -uint8_t x_13; -x_13 = !lean_is_exclusive(x_5); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_14 = lean_ctor_get(x_5, 0); -x_15 = lean_ctor_get(x_1, 0); +x_11 = lean_ctor_get(x_1, 0); +lean_inc(x_11); +lean_dec(x_1); +x_12 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1; +x_13 = l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3; +x_14 = lean_apply_5(x_11, lean_box(0), x_12, x_13, x_10, x_2); +x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); -lean_dec(x_1); -x_16 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1; -x_17 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3; -x_18 = lean_apply_5(x_15, lean_box(0), x_16, x_17, x_14, x_2); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -x_21 = lean_st_ref_set(x_3, x_20, x_7); -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_st_ref_set(x_3, x_16, x_7); +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) { -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_21, 0); -lean_dec(x_23); -x_24 = lean_apply_1(x_4, x_19); -lean_ctor_set(x_5, 0, x_24); -lean_ctor_set(x_21, 0, x_5); -return x_21; +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_17, 0); +lean_dec(x_19); +x_20 = lean_apply_1(x_4, x_15); +lean_ctor_set(x_17, 0, x_20); +return x_17; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_21, 1); -lean_inc(x_25); -lean_dec(x_21); -x_26 = lean_apply_1(x_4, x_19); -lean_ctor_set(x_5, 0, x_26); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_5); -lean_ctor_set(x_27, 1, x_25); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_28 = lean_ctor_get(x_5, 0); -lean_inc(x_28); -lean_dec(x_5); -x_29 = lean_ctor_get(x_1, 0); -lean_inc(x_29); -lean_dec(x_1); -x_30 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1; -x_31 = l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3; -x_32 = lean_apply_5(x_29, lean_box(0), x_30, x_31, x_28, x_2); -x_33 = lean_ctor_get(x_32, 0); -lean_inc(x_33); -x_34 = lean_ctor_get(x_32, 1); -lean_inc(x_34); -lean_dec(x_32); -x_35 = lean_st_ref_set(x_3, x_34, x_7); -x_36 = lean_ctor_get(x_35, 1); -lean_inc(x_36); -if (lean_is_exclusive(x_35)) { - lean_ctor_release(x_35, 0); - lean_ctor_release(x_35, 1); - x_37 = x_35; -} else { - lean_dec_ref(x_35); - x_37 = lean_box(0); -} -x_38 = lean_apply_1(x_4, x_33); -x_39 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_39, 0, x_38); -if (lean_is_scalar(x_37)) { - x_40 = lean_alloc_ctor(0, 2, 0); -} else { - x_40 = x_37; -} -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_36); -return x_40; +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_17, 1); +lean_inc(x_21); +lean_dec(x_17); +x_22 = lean_apply_1(x_4, x_15); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_21); +return x_23; } } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -1597,29 +1372,19 @@ x_1 = lean_mk_string("Outdated RPC session"); return x_1; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; x_1 = 9; -x_2 = l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1; +x_2 = l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1; x_3 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_3, 0, x_2); lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_1); return x_3; } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, uint64_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, uint64_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; @@ -1637,15 +1402,15 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_13 = l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3; -x_14 = lean_alloc_ctor(0, 2, 0); +x_13 = l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2; +x_14 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_14, 0, x_13); lean_ctor_set(x_14, 1, x_10); return x_14; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_15 = lean_ctor_get(x_12, 0); lean_inc(x_15); lean_dec(x_12); @@ -1657,15 +1422,15 @@ lean_inc(x_18); lean_dec(x_16); lean_inc(x_8); x_19 = l_Lean_Server_parseRequestParams___rarg(x_1, x_8); -x_20 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__1___boxed), 3, 1); +x_20 = lean_alloc_closure((void*)(l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg___boxed), 3, 1); lean_closure_set(x_20, 0, x_19); lean_inc(x_17); -x_21 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__2___boxed), 7, 4); +x_21 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__1___boxed), 7, 4); lean_closure_set(x_21, 0, x_2); lean_closure_set(x_21, 1, x_17); lean_closure_set(x_21, 2, x_3); lean_closure_set(x_21, 3, x_8); -x_22 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__2___rarg), 4, 2); +x_22 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Server_registerRpcCallHandler___spec__3___rarg), 4, 2); lean_closure_set(x_22, 0, x_20); lean_closure_set(x_22, 1, x_21); lean_inc(x_9); @@ -1675,37 +1440,31 @@ lean_inc(x_24); x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); lean_dec(x_23); -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__3), 4, 1); -lean_closure_set(x_27, 0, x_4); +x_26 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__2), 4, 1); +lean_closure_set(x_26, 0, x_4); lean_inc(x_9); -x_28 = l_Lean_Server_RequestM_bindTask___rarg(x_26, x_27, x_9, x_25); -x_29 = lean_ctor_get(x_28, 0); +x_27 = l_Lean_Server_RequestM_bindTask___rarg(x_24, x_26, x_9, x_25); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -lean_dec(x_28); -x_31 = lean_ctor_get(x_29, 0); -lean_inc(x_31); -lean_dec(x_29); -x_32 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__4___boxed), 7, 4); -lean_closure_set(x_32, 0, x_5); -lean_closure_set(x_32, 1, x_17); -lean_closure_set(x_32, 2, x_15); -lean_closure_set(x_32, 3, x_6); -x_33 = l_Lean_Server_RequestM_mapTask___rarg(x_31, x_32, x_9, x_30); -return x_33; +lean_dec(x_27); +x_30 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__3___boxed), 7, 4); +lean_closure_set(x_30, 0, x_5); +lean_closure_set(x_30, 1, x_17); +lean_closure_set(x_30, 2, x_15); +lean_closure_set(x_30, 3, x_6); +x_31 = l_Lean_Server_RequestM_mapTask___rarg(x_28, x_30, x_9, x_29); +return x_31; } } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_inc(x_3); -x_9 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__5___boxed), 10, 6); +x_9 = lean_alloc_closure((void*)(l_Lean_Server_registerRpcCallHandler___lambda__4___boxed), 10, 6); lean_closure_set(x_9, 0, x_1); lean_closure_set(x_9, 1, x_2); lean_closure_set(x_9, 2, x_3); @@ -1743,7 +1502,7 @@ return x_21; } } } -static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1() { +static lean_object* _init_l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1() { _start: { lean_object* x_1; @@ -1751,7 +1510,7 @@ x_1 = lean_mk_string("Failed to register RPC call handler for '"); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; uint8_t x_11; @@ -1765,13 +1524,13 @@ lean_object* x_12; lean_object* x_13; uint8_t x_14; x_12 = lean_ctor_get(x_10, 0); x_13 = lean_ctor_get(x_10, 1); lean_inc(x_3); -x_14 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_12, x_3); +x_14 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_12, x_3); if (x_14 == 0) { lean_object* x_15; lean_object* x_16; lean_free_object(x_10); x_15 = lean_box(0); -x_16 = l_Lean_Server_registerRpcCallHandler___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_15, x_13); +x_16 = l_Lean_Server_registerRpcCallHandler___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_15, x_13); return x_16; } else @@ -1784,7 +1543,7 @@ lean_dec(x_2); lean_dec(x_1); x_17 = 1; x_18 = l_Lean_Name_toString(x_3, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__4___closed__2; @@ -1805,12 +1564,12 @@ lean_inc(x_25); lean_inc(x_24); lean_dec(x_10); lean_inc(x_3); -x_26 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_24, x_3); +x_26 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_24, x_3); if (x_26 == 0) { lean_object* x_27; lean_object* x_28; x_27 = lean_box(0); -x_28 = l_Lean_Server_registerRpcCallHandler___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_27, x_25); +x_28 = l_Lean_Server_registerRpcCallHandler___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_27, x_25); return x_28; } else @@ -1823,7 +1582,7 @@ lean_dec(x_2); lean_dec(x_1); x_29 = 1; x_30 = l_Lean_Name_toString(x_3, x_29); -x_31 = l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1; +x_31 = l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1; x_32 = lean_string_append(x_31, x_30); lean_dec(x_30); x_33 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___lambda__4___closed__2; @@ -1866,7 +1625,7 @@ x_16 = lean_ctor_get(x_12, 0); lean_dec(x_16); x_17 = 1; x_18 = l_Lean_Name_toString(x_1, x_17); -x_19 = l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1; +x_19 = l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1; x_20 = lean_string_append(x_19, x_18); lean_dec(x_18); x_21 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___closed__1; @@ -1885,7 +1644,7 @@ lean_inc(x_24); lean_dec(x_12); x_25 = 1; x_26 = l_Lean_Name_toString(x_1, x_25); -x_27 = l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1; +x_27 = l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1; x_28 = lean_string_append(x_27, x_26); lean_dec(x_26); x_29 = l_Lean_Server_registerLspRequestHandler___at_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146____spec__1___closed__1; @@ -1905,7 +1664,7 @@ x_33 = lean_ctor_get(x_12, 1); lean_inc(x_33); lean_dec(x_12); x_34 = lean_box(0); -x_35 = l_Lean_Server_registerRpcCallHandler___lambda__7(x_6, x_5, x_1, x_10, x_8, x_9, x_34, x_33); +x_35 = l_Lean_Server_registerRpcCallHandler___lambda__6(x_6, x_5, x_1, x_10, x_8, x_9, x_34, x_33); return x_35; } } @@ -1949,11 +1708,21 @@ x_4 = l_Std_RBNode_find___at_Lean_Server_registerRpcCallHandler___spec__1(x_1, x return x_4; } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_liftExcept___at_Lean_Server_registerRpcCallHandler___spec__2___rarg(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { uint8_t x_6; lean_object* x_7; -x_6 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__5(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Std_PersistentHashMap_containsAtAux___at_Lean_Server_registerRpcCallHandler___spec__6(x_1, x_2, x_3, x_4, x_5); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); @@ -1961,70 +1730,61 @@ x_7 = lean_box(x_6); return x_7; } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; uint8_t x_5; lean_object* x_6; x_4 = lean_unbox_usize(x_2); lean_dec(x_2); -x_5 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4(x_1, x_4, x_3); +x_5 = l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5(x_1, x_4, x_3); lean_dec(x_3); x_6 = lean_box(x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__3(x_1, x_2); +x_3 = l_Std_PersistentHashMap_contains___at_Lean_Server_registerRpcCallHandler___spec__4(x_1, x_2); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Lean_Server_registerRpcCallHandler___lambda__1(x_1, x_2, x_3); -lean_dec(x_2); -return x_4; -} -} -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l_Lean_Server_registerRpcCallHandler___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Server_registerRpcCallHandler___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_6); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l_Lean_Server_registerRpcCallHandler___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Server_registerRpcCallHandler___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_6); lean_dec(x_3); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { uint64_t x_11; lean_object* x_12; x_11 = lean_unbox_uint64(x_7); lean_dec(x_7); -x_12 = l_Lean_Server_registerRpcCallHandler___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_11, x_8, x_9, x_10); +x_12 = l_Lean_Server_registerRpcCallHandler___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_11, x_8, x_9, x_10); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Server_registerRpcCallHandler___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Lean_Server_registerRpcCallHandler___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Lean_Server_registerRpcCallHandler___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_7); return x_9; } @@ -2094,28 +1854,26 @@ lean_mark_persistent(l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling res = l_Lean_Server_initFn____x40_Lean_Server_Rpc_RequestHandling___hyg_146_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__1 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__1(); -l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__2 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__4___closed__2(); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__1); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__2); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__3); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__4); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__5); -l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6 = _init_l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__2___closed__6); -l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__5___closed__1); -l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__5___closed__2); -l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__5___closed__3); -l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1(); -lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__7___closed__1); +l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__1 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__1(); +l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__2 = _init_l_Std_PersistentHashMap_containsAux___at_Lean_Server_registerRpcCallHandler___spec__5___closed__2(); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__1); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__2); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__3); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__4); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__5); +l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6 = _init_l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__1___closed__6); +l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__4___closed__1); +l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2 = _init_l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__4___closed__2); +l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1 = _init_l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Server_registerRpcCallHandler___lambda__6___closed__1); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Server/Snapshots.c b/stage0/stdlib/Lean/Server/Snapshots.c index 4a9a4d5bdf..e7d0897e69 100644 --- a/stage0/stdlib/Lean/Server/Snapshots.c +++ b/stage0/stdlib/Lean/Server/Snapshots.c @@ -15,17 +15,15 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_reparseHeader___boxed(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); -lean_object* l_Lean_Elab_Command_catchExceptions(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_Snapshot_msgLog___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_Snapshots_Snapshot_diagnostics___spec__3___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_List_head_x21___at_Lean_Elab_Command_instMonadOptionsCommandElabM___spec__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_PersistentArray_getAux___at_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_parseHeader(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__6; -LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_iota(lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); size_t lean_usize_sub(size_t, size_t); @@ -47,7 +45,6 @@ static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__14; static lean_object* l_Lean_Server_Snapshots_Snapshot_infoTree___closed__1; lean_object* l_Std_PersistentArray_get_x21___at_Lean_Elab_withInfoHole___spec__1(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); -LEAN_EXPORT lean_object* l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty(uint8_t); static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__10; static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__5; static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__15; @@ -55,7 +52,6 @@ static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__18; static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__16; LEAN_EXPORT lean_object* l_Std_PersistentArray_getAux___at_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags___spec__2(lean_object*, size_t, size_t); lean_object* l_Lean_Widget_msgToInteractiveDiagnostic(lean_object*, lean_object*, lean_object*); -lean_object* l_EIO_toIO___rarg(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_parseAhead(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_Snapshots_Snapshot_infoTree___closed__6; @@ -71,9 +67,9 @@ LEAN_EXPORT lean_object* l_Std_PersistentArray_get_x21___at_Lean_Server_Snapshot LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedMessage; lean_object* l_Std_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); -static lean_object* l_Lean_Server_Snapshots_compileNextCmd___closed__6; size_t lean_usize_shift_left(size_t, size_t); static lean_object* l_Lean_Server_Snapshots_reparseHeader___closed__1; +lean_object* l_Lean_Elab_Command_withLogging(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -87,13 +83,13 @@ size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_Snapshot_diagnostics(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_parseNextCmd(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_Snapshot_isAtEnd___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__19; lean_object* l_Lean_Parser_parseCommand_parse(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_PersistentArray_push___rarg(lean_object*, lean_object*); extern lean_object* l_Lean_Elab_instInhabitedInfoTree; uint8_t l_String_isEmpty(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty___boxed(lean_object*); uint8_t l_Lean_Parser_isExitCommand(lean_object*); static size_t l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__12; uint8_t lean_nat_dec_le(lean_object*, lean_object*); @@ -132,6 +128,7 @@ static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__9; static lean_object* l_Lean_Server_Snapshots_instInhabitedSnapshot___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_Snapshot_env(lean_object*); size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd(lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(lean_object*); lean_object* l_Lean_Elab_getResetInfoTrees___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__3___rarg(lean_object*, lean_object*); @@ -946,22 +943,6 @@ lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty(uint8_t x_1) { -_start: -{ -lean_internal_panic_unreachable(); -} -} -LEAN_EXPORT lean_object* l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty___boxed(lean_object* x_1) { -_start: -{ -uint8_t x_2; lean_object* x_3; -x_2 = lean_unbox(x_1); -lean_dec(x_1); -x_3 = l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty(x_2); -return x_3; -} -} LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_parseNextCmd(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -1360,7 +1341,63 @@ x_7 = l_Lean_Elab_Command_elabCommandTopLevel(x_1, x_2, x_3, x_6); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Elab_Command_withLogging(x_1, x_2, x_3, x_4); +if (lean_obj_tag(x_5) == 0) +{ +uint8_t x_6; +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) +{ +return x_5; +} +else +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_5, 0); +x_8 = lean_ctor_get(x_5, 1); +lean_inc(x_8); +lean_inc(x_7); +lean_dec(x_5); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_7); +lean_ctor_set(x_9, 1, x_8); +return x_9; +} +} +else +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_5); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_5, 0); +lean_dec(x_11); +x_12 = lean_box(0); +lean_ctor_set_tag(x_5, 0); +lean_ctor_set(x_5, 0, x_12); +return x_5; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_5, 1); +lean_inc(x_13); +lean_dec(x_5); +x_14 = lean_box(0); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; @@ -1436,7 +1473,7 @@ static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Server_Snapshots_0__Lean_Server_Snapshots_ioErrorFromEmpty___boxed), 1, 0); +x_1 = lean_mk_string(""); return x_1; } } @@ -1444,7 +1481,7 @@ static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__2() { _start: { lean_object* x_1; -x_1 = lean_mk_string(""); +x_1 = lean_mk_string("Init.Data.Option.BasicAux"); return x_1; } } @@ -1452,7 +1489,7 @@ static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__3() { _start: { lean_object* x_1; -x_1 = lean_mk_string("Init.Data.Option.BasicAux"); +x_1 = lean_mk_string("Option.get!"); return x_1; } } @@ -1460,27 +1497,19 @@ static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__4() { _start: { lean_object* x_1; -x_1 = lean_mk_string("Option.get!"); +x_1 = lean_mk_string("value is none"); return x_1; } } static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__5() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("value is none"); -return x_1; -} -} -static lean_object* _init_l_Lean_Server_Snapshots_compileNextCmd___closed__6() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Server_Snapshots_compileNextCmd___closed__3; -x_2 = l_Lean_Server_Snapshots_compileNextCmd___closed__4; +x_1 = l_Lean_Server_Snapshots_compileNextCmd___closed__2; +x_2 = l_Lean_Server_Snapshots_compileNextCmd___closed__3; x_3 = lean_unsigned_to_nat(16u); x_4 = lean_unsigned_to_nat(14u); -x_5 = l_Lean_Server_Snapshots_compileNextCmd___closed__5; +x_5 = l_Lean_Server_Snapshots_compileNextCmd___closed__4; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -1547,22 +1576,22 @@ lean_inc(x_25); x_30 = l_Lean_Parser_isEOI(x_25); if (lean_obj_tag(x_29) == 0) { -lean_object* x_204; lean_object* x_205; -x_204 = l_Lean_Server_Snapshots_compileNextCmd___closed__6; -x_205 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_204); -x_31 = x_205; -goto block_203; +lean_object* x_200; lean_object* x_201; +x_200 = l_Lean_Server_Snapshots_compileNextCmd___closed__5; +x_201 = l_panic___at_Lean_Elab_InfoTree_smallestInfo_x3f___spec__1(x_200); +x_31 = x_201; +goto block_199; } else { -lean_object* x_206; -x_206 = lean_ctor_get(x_29, 0); -lean_inc(x_206); +lean_object* x_202; +x_202 = lean_ctor_get(x_29, 0); +lean_inc(x_202); lean_dec(x_29); -x_31 = x_206; -goto block_203; +x_31 = x_202; +goto block_199; } -block_203: +block_199: { if (x_30 == 0) { @@ -1575,7 +1604,7 @@ uint8_t x_33; x_33 = !lean_is_exclusive(x_7); if (x_33 == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_34 = lean_ctor_get(x_7, 8); lean_dec(x_34); x_35 = lean_ctor_get(x_7, 7); @@ -1621,80 +1650,74 @@ lean_inc(x_25); x_53 = lean_alloc_closure((void*)(l_Lean_Server_Snapshots_compileNextCmd___lambda__1), 4, 1); lean_closure_set(x_53, 0, x_25); lean_inc(x_44); -x_54 = lean_alloc_closure((void*)(l_Lean_Elab_Command_catchExceptions), 4, 3); +x_54 = lean_alloc_closure((void*)(l_Lean_Server_Snapshots_compileNextCmd___lambda__2), 4, 3); lean_closure_set(x_54, 0, x_53); lean_closure_set(x_54, 1, x_52); lean_closure_set(x_54, 2, x_44); -x_55 = l_Lean_Server_Snapshots_compileNextCmd___closed__1; -x_56 = lean_alloc_closure((void*)(l_EIO_toIO___rarg), 3, 2); -lean_closure_set(x_56, 0, x_55); -lean_closure_set(x_56, 1, x_54); -x_57 = l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1(x_56, x_45); -if (lean_obj_tag(x_57) == 0) +x_55 = l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1(x_54, x_45); +if (lean_obj_tag(x_55) == 0) { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; -x_58 = lean_ctor_get(x_57, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +x_58 = lean_ctor_get(x_56, 0); lean_inc(x_58); -x_59 = lean_ctor_get(x_57, 1); -lean_inc(x_59); -lean_dec(x_57); -x_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -lean_dec(x_58); -x_61 = lean_st_ref_get(x_44, x_59); +lean_dec(x_56); +x_59 = lean_st_ref_get(x_44, x_57); lean_dec(x_44); -x_62 = lean_ctor_get(x_61, 0); -lean_inc(x_62); -x_63 = lean_ctor_get(x_61, 1); -lean_inc(x_63); -lean_dec(x_61); -x_64 = l_String_isEmpty(x_60); -if (x_64 == 0) +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); +lean_dec(x_59); +x_62 = l_String_isEmpty(x_58); +if (x_62 == 0) { -uint8_t x_65; -x_65 = !lean_is_exclusive(x_62); -if (x_65 == 0) +uint8_t x_63; +x_63 = !lean_is_exclusive(x_60); +if (x_63 == 0) { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; uint8_t x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_66 = lean_ctor_get(x_62, 1); -x_67 = l_Lean_FileMap_toPosition(x_46, x_47); +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_64 = lean_ctor_get(x_60, 1); +x_65 = l_Lean_FileMap_toPosition(x_46, x_47); lean_dec(x_47); lean_dec(x_46); -x_68 = lean_box(0); -x_69 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_69, 0, x_60); -x_70 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_70, 0, x_69); -x_71 = 0; -x_72 = l_Lean_Server_Snapshots_compileNextCmd___closed__2; -x_73 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_73, 0, x_5); -lean_ctor_set(x_73, 1, x_67); -lean_ctor_set(x_73, 2, x_68); -lean_ctor_set(x_73, 3, x_72); -lean_ctor_set(x_73, 4, x_70); -lean_ctor_set_uint8(x_73, sizeof(void*)*5, x_71); -x_74 = l_Std_PersistentArray_push___rarg(x_66, x_73); -lean_ctor_set(x_62, 1, x_74); -x_75 = lean_box(0); -x_76 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_31, x_25, x_26, x_62, x_75, x_63); +x_66 = lean_box(0); +x_67 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_67, 0, x_58); +x_68 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_68, 0, x_67); +x_69 = 0; +x_70 = l_Lean_Server_Snapshots_compileNextCmd___closed__1; +x_71 = lean_alloc_ctor(0, 5, 1); +lean_ctor_set(x_71, 0, x_5); +lean_ctor_set(x_71, 1, x_65); +lean_ctor_set(x_71, 2, x_66); +lean_ctor_set(x_71, 3, x_70); +lean_ctor_set(x_71, 4, x_68); +lean_ctor_set_uint8(x_71, sizeof(void*)*5, x_69); +x_72 = l_Std_PersistentArray_push___rarg(x_64, x_71); +lean_ctor_set(x_60, 1, x_72); +x_73 = lean_box(0); +x_74 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_31, x_25, x_26, x_60, x_73, x_61); lean_dec(x_1); -return x_76; +return x_74; } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; uint8_t x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_77 = lean_ctor_get(x_62, 0); -x_78 = lean_ctor_get(x_62, 1); -x_79 = lean_ctor_get(x_62, 2); -x_80 = lean_ctor_get(x_62, 3); -x_81 = lean_ctor_get(x_62, 4); -x_82 = lean_ctor_get(x_62, 5); -x_83 = lean_ctor_get(x_62, 6); -x_84 = lean_ctor_get(x_62, 7); -x_85 = lean_ctor_get(x_62, 8); -lean_inc(x_85); -lean_inc(x_84); +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; uint8_t x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_75 = lean_ctor_get(x_60, 0); +x_76 = lean_ctor_get(x_60, 1); +x_77 = lean_ctor_get(x_60, 2); +x_78 = lean_ctor_get(x_60, 3); +x_79 = lean_ctor_get(x_60, 4); +x_80 = lean_ctor_get(x_60, 5); +x_81 = lean_ctor_get(x_60, 6); +x_82 = lean_ctor_get(x_60, 7); +x_83 = lean_ctor_get(x_60, 8); lean_inc(x_83); lean_inc(x_82); lean_inc(x_81); @@ -1702,56 +1725,58 @@ lean_inc(x_80); lean_inc(x_79); lean_inc(x_78); lean_inc(x_77); -lean_dec(x_62); -x_86 = l_Lean_FileMap_toPosition(x_46, x_47); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_60); +x_84 = l_Lean_FileMap_toPosition(x_46, x_47); +lean_dec(x_47); +lean_dec(x_46); +x_85 = lean_box(0); +x_86 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_86, 0, x_58); +x_87 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_87, 0, x_86); +x_88 = 0; +x_89 = l_Lean_Server_Snapshots_compileNextCmd___closed__1; +x_90 = lean_alloc_ctor(0, 5, 1); +lean_ctor_set(x_90, 0, x_5); +lean_ctor_set(x_90, 1, x_84); +lean_ctor_set(x_90, 2, x_85); +lean_ctor_set(x_90, 3, x_89); +lean_ctor_set(x_90, 4, x_87); +lean_ctor_set_uint8(x_90, sizeof(void*)*5, x_88); +x_91 = l_Std_PersistentArray_push___rarg(x_76, x_90); +x_92 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_92, 0, x_75); +lean_ctor_set(x_92, 1, x_91); +lean_ctor_set(x_92, 2, x_77); +lean_ctor_set(x_92, 3, x_78); +lean_ctor_set(x_92, 4, x_79); +lean_ctor_set(x_92, 5, x_80); +lean_ctor_set(x_92, 6, x_81); +lean_ctor_set(x_92, 7, x_82); +lean_ctor_set(x_92, 8, x_83); +x_93 = lean_box(0); +x_94 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_31, x_25, x_26, x_92, x_93, x_61); +lean_dec(x_1); +return x_94; +} +} +else +{ +lean_object* x_95; lean_object* x_96; +lean_dec(x_58); lean_dec(x_47); lean_dec(x_46); -x_87 = lean_box(0); -x_88 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_88, 0, x_60); -x_89 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_89, 0, x_88); -x_90 = 0; -x_91 = l_Lean_Server_Snapshots_compileNextCmd___closed__2; -x_92 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_92, 0, x_5); -lean_ctor_set(x_92, 1, x_86); -lean_ctor_set(x_92, 2, x_87); -lean_ctor_set(x_92, 3, x_91); -lean_ctor_set(x_92, 4, x_89); -lean_ctor_set_uint8(x_92, sizeof(void*)*5, x_90); -x_93 = l_Std_PersistentArray_push___rarg(x_78, x_92); -x_94 = lean_alloc_ctor(0, 9, 0); -lean_ctor_set(x_94, 0, x_77); -lean_ctor_set(x_94, 1, x_93); -lean_ctor_set(x_94, 2, x_79); -lean_ctor_set(x_94, 3, x_80); -lean_ctor_set(x_94, 4, x_81); -lean_ctor_set(x_94, 5, x_82); -lean_ctor_set(x_94, 6, x_83); -lean_ctor_set(x_94, 7, x_84); -lean_ctor_set(x_94, 8, x_85); x_95 = lean_box(0); -x_96 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_31, x_25, x_26, x_94, x_95, x_63); +x_96 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_31, x_25, x_26, x_60, x_95, x_61); lean_dec(x_1); return x_96; } } else { -lean_object* x_97; lean_object* x_98; -lean_dec(x_60); -lean_dec(x_47); -lean_dec(x_46); -x_97 = lean_box(0); -x_98 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_31, x_25, x_26, x_62, x_97, x_63); -lean_dec(x_1); -return x_98; -} -} -else -{ -uint8_t x_99; +uint8_t x_97; lean_dec(x_47); lean_dec(x_46); lean_dec(x_44); @@ -1760,216 +1785,212 @@ lean_dec(x_26); lean_dec(x_25); lean_dec(x_2); lean_dec(x_1); -x_99 = !lean_is_exclusive(x_57); -if (x_99 == 0) +x_97 = !lean_is_exclusive(x_55); +if (x_97 == 0) { -return x_57; +return x_55; } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_100 = lean_ctor_get(x_57, 0); -x_101 = lean_ctor_get(x_57, 1); -lean_inc(x_101); -lean_inc(x_100); -lean_dec(x_57); -x_102 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_102, 0, x_100); -lean_ctor_set(x_102, 1, x_101); -return x_102; +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_55, 0); +x_99 = lean_ctor_get(x_55, 1); +lean_inc(x_99); +lean_inc(x_98); +lean_dec(x_55); +x_100 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_100, 0, x_98); +lean_ctor_set(x_100, 1, x_99); +return x_100; } } } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_dec(x_7); -x_103 = lean_alloc_ctor(0, 9, 0); -lean_ctor_set(x_103, 0, x_9); -lean_ctor_set(x_103, 1, x_27); -lean_ctor_set(x_103, 2, x_10); -lean_ctor_set(x_103, 3, x_11); -lean_ctor_set(x_103, 4, x_12); -lean_ctor_set(x_103, 5, x_13); -lean_ctor_set(x_103, 6, x_14); -lean_ctor_set(x_103, 7, x_15); -lean_ctor_set(x_103, 8, x_16); -x_104 = l_IO_mkRef___rarg(x_103, x_3); -x_105 = lean_ctor_get(x_104, 0); -lean_inc(x_105); -x_106 = lean_ctor_get(x_104, 1); +x_101 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_101, 0, x_9); +lean_ctor_set(x_101, 1, x_27); +lean_ctor_set(x_101, 2, x_10); +lean_ctor_set(x_101, 3, x_11); +lean_ctor_set(x_101, 4, x_12); +lean_ctor_set(x_101, 5, x_13); +lean_ctor_set(x_101, 6, x_14); +lean_ctor_set(x_101, 7, x_15); +lean_ctor_set(x_101, 8, x_16); +x_102 = l_IO_mkRef___rarg(x_101, x_3); +x_103 = lean_ctor_get(x_102, 0); +lean_inc(x_103); +x_104 = lean_ctor_get(x_102, 1); +lean_inc(x_104); +lean_dec(x_102); +x_105 = l_Lean_FileMap_ofString(x_4); +x_106 = l_Lean_Server_Snapshots_Snapshot_endPos(x_2); +x_107 = lean_box(0); +x_108 = lean_unsigned_to_nat(0u); +x_109 = l_Lean_firstFrontendMacroScope; +x_110 = lean_box(0); lean_inc(x_106); -lean_dec(x_104); -x_107 = l_Lean_FileMap_ofString(x_4); -x_108 = l_Lean_Server_Snapshots_Snapshot_endPos(x_2); -x_109 = lean_box(0); -x_110 = lean_unsigned_to_nat(0u); -x_111 = l_Lean_firstFrontendMacroScope; -x_112 = lean_box(0); -lean_inc(x_108); -lean_inc(x_107); -x_113 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_113, 0, x_5); -lean_ctor_set(x_113, 1, x_107); -lean_ctor_set(x_113, 2, x_110); -lean_ctor_set(x_113, 3, x_108); -lean_ctor_set(x_113, 4, x_109); -lean_ctor_set(x_113, 5, x_111); -lean_ctor_set(x_113, 6, x_112); -lean_inc(x_25); -x_114 = lean_alloc_closure((void*)(l_Lean_Server_Snapshots_compileNextCmd___lambda__1), 4, 1); -lean_closure_set(x_114, 0, x_25); lean_inc(x_105); -x_115 = lean_alloc_closure((void*)(l_Lean_Elab_Command_catchExceptions), 4, 3); -lean_closure_set(x_115, 0, x_114); -lean_closure_set(x_115, 1, x_113); -lean_closure_set(x_115, 2, x_105); -x_116 = l_Lean_Server_Snapshots_compileNextCmd___closed__1; -x_117 = lean_alloc_closure((void*)(l_EIO_toIO___rarg), 3, 2); -lean_closure_set(x_117, 0, x_116); -lean_closure_set(x_117, 1, x_115); -x_118 = l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1(x_117, x_106); -if (lean_obj_tag(x_118) == 0) +x_111 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_111, 0, x_5); +lean_ctor_set(x_111, 1, x_105); +lean_ctor_set(x_111, 2, x_108); +lean_ctor_set(x_111, 3, x_106); +lean_ctor_set(x_111, 4, x_107); +lean_ctor_set(x_111, 5, x_109); +lean_ctor_set(x_111, 6, x_110); +lean_inc(x_25); +x_112 = lean_alloc_closure((void*)(l_Lean_Server_Snapshots_compileNextCmd___lambda__1), 4, 1); +lean_closure_set(x_112, 0, x_25); +lean_inc(x_103); +x_113 = lean_alloc_closure((void*)(l_Lean_Server_Snapshots_compileNextCmd___lambda__2), 4, 3); +lean_closure_set(x_113, 0, x_112); +lean_closure_set(x_113, 1, x_111); +lean_closure_set(x_113, 2, x_103); +x_114 = l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1(x_113, x_104); +if (lean_obj_tag(x_114) == 0) { -lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; uint8_t x_125; +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; uint8_t x_121; +x_115 = lean_ctor_get(x_114, 0); +lean_inc(x_115); +x_116 = lean_ctor_get(x_114, 1); +lean_inc(x_116); +lean_dec(x_114); +x_117 = lean_ctor_get(x_115, 0); +lean_inc(x_117); +lean_dec(x_115); +x_118 = lean_st_ref_get(x_103, x_116); +lean_dec(x_103); x_119 = lean_ctor_get(x_118, 0); lean_inc(x_119); x_120 = lean_ctor_get(x_118, 1); lean_inc(x_120); lean_dec(x_118); -x_121 = lean_ctor_get(x_119, 0); -lean_inc(x_121); -lean_dec(x_119); -x_122 = lean_st_ref_get(x_105, x_120); -lean_dec(x_105); -x_123 = lean_ctor_get(x_122, 0); +x_121 = l_String_isEmpty(x_117); +if (x_121 == 0) +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; uint8_t x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_122 = lean_ctor_get(x_119, 0); +lean_inc(x_122); +x_123 = lean_ctor_get(x_119, 1); lean_inc(x_123); -x_124 = lean_ctor_get(x_122, 1); +x_124 = lean_ctor_get(x_119, 2); lean_inc(x_124); -lean_dec(x_122); -x_125 = l_String_isEmpty(x_121); -if (x_125 == 0) -{ -lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; uint8_t x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; -x_126 = lean_ctor_get(x_123, 0); +x_125 = lean_ctor_get(x_119, 3); +lean_inc(x_125); +x_126 = lean_ctor_get(x_119, 4); lean_inc(x_126); -x_127 = lean_ctor_get(x_123, 1); +x_127 = lean_ctor_get(x_119, 5); lean_inc(x_127); -x_128 = lean_ctor_get(x_123, 2); +x_128 = lean_ctor_get(x_119, 6); lean_inc(x_128); -x_129 = lean_ctor_get(x_123, 3); +x_129 = lean_ctor_get(x_119, 7); lean_inc(x_129); -x_130 = lean_ctor_get(x_123, 4); +x_130 = lean_ctor_get(x_119, 8); lean_inc(x_130); -x_131 = lean_ctor_get(x_123, 5); -lean_inc(x_131); -x_132 = lean_ctor_get(x_123, 6); -lean_inc(x_132); -x_133 = lean_ctor_get(x_123, 7); -lean_inc(x_133); -x_134 = lean_ctor_get(x_123, 8); -lean_inc(x_134); -if (lean_is_exclusive(x_123)) { - lean_ctor_release(x_123, 0); - lean_ctor_release(x_123, 1); - lean_ctor_release(x_123, 2); - lean_ctor_release(x_123, 3); - lean_ctor_release(x_123, 4); - lean_ctor_release(x_123, 5); - lean_ctor_release(x_123, 6); - lean_ctor_release(x_123, 7); - lean_ctor_release(x_123, 8); - x_135 = x_123; +if (lean_is_exclusive(x_119)) { + lean_ctor_release(x_119, 0); + lean_ctor_release(x_119, 1); + lean_ctor_release(x_119, 2); + lean_ctor_release(x_119, 3); + lean_ctor_release(x_119, 4); + lean_ctor_release(x_119, 5); + lean_ctor_release(x_119, 6); + lean_ctor_release(x_119, 7); + lean_ctor_release(x_119, 8); + x_131 = x_119; } else { - lean_dec_ref(x_123); - x_135 = lean_box(0); + lean_dec_ref(x_119); + x_131 = lean_box(0); } -x_136 = l_Lean_FileMap_toPosition(x_107, x_108); -lean_dec(x_108); -lean_dec(x_107); -x_137 = lean_box(0); -x_138 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_138, 0, x_121); -x_139 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_139, 0, x_138); -x_140 = 0; -x_141 = l_Lean_Server_Snapshots_compileNextCmd___closed__2; -x_142 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_142, 0, x_5); -lean_ctor_set(x_142, 1, x_136); -lean_ctor_set(x_142, 2, x_137); -lean_ctor_set(x_142, 3, x_141); -lean_ctor_set(x_142, 4, x_139); -lean_ctor_set_uint8(x_142, sizeof(void*)*5, x_140); -x_143 = l_Std_PersistentArray_push___rarg(x_127, x_142); -if (lean_is_scalar(x_135)) { - x_144 = lean_alloc_ctor(0, 9, 0); -} else { - x_144 = x_135; -} -lean_ctor_set(x_144, 0, x_126); -lean_ctor_set(x_144, 1, x_143); -lean_ctor_set(x_144, 2, x_128); -lean_ctor_set(x_144, 3, x_129); -lean_ctor_set(x_144, 4, x_130); -lean_ctor_set(x_144, 5, x_131); -lean_ctor_set(x_144, 6, x_132); -lean_ctor_set(x_144, 7, x_133); -lean_ctor_set(x_144, 8, x_134); -x_145 = lean_box(0); -x_146 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_31, x_25, x_26, x_144, x_145, x_124); -lean_dec(x_1); -return x_146; -} -else -{ -lean_object* x_147; lean_object* x_148; -lean_dec(x_121); -lean_dec(x_108); -lean_dec(x_107); -x_147 = lean_box(0); -x_148 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_31, x_25, x_26, x_123, x_147, x_124); -lean_dec(x_1); -return x_148; -} -} -else -{ -lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; -lean_dec(x_108); -lean_dec(x_107); +x_132 = l_Lean_FileMap_toPosition(x_105, x_106); +lean_dec(x_106); lean_dec(x_105); +x_133 = lean_box(0); +x_134 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_134, 0, x_117); +x_135 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_135, 0, x_134); +x_136 = 0; +x_137 = l_Lean_Server_Snapshots_compileNextCmd___closed__1; +x_138 = lean_alloc_ctor(0, 5, 1); +lean_ctor_set(x_138, 0, x_5); +lean_ctor_set(x_138, 1, x_132); +lean_ctor_set(x_138, 2, x_133); +lean_ctor_set(x_138, 3, x_137); +lean_ctor_set(x_138, 4, x_135); +lean_ctor_set_uint8(x_138, sizeof(void*)*5, x_136); +x_139 = l_Std_PersistentArray_push___rarg(x_123, x_138); +if (lean_is_scalar(x_131)) { + x_140 = lean_alloc_ctor(0, 9, 0); +} else { + x_140 = x_131; +} +lean_ctor_set(x_140, 0, x_122); +lean_ctor_set(x_140, 1, x_139); +lean_ctor_set(x_140, 2, x_124); +lean_ctor_set(x_140, 3, x_125); +lean_ctor_set(x_140, 4, x_126); +lean_ctor_set(x_140, 5, x_127); +lean_ctor_set(x_140, 6, x_128); +lean_ctor_set(x_140, 7, x_129); +lean_ctor_set(x_140, 8, x_130); +x_141 = lean_box(0); +x_142 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_31, x_25, x_26, x_140, x_141, x_120); +lean_dec(x_1); +return x_142; +} +else +{ +lean_object* x_143; lean_object* x_144; +lean_dec(x_117); +lean_dec(x_106); +lean_dec(x_105); +x_143 = lean_box(0); +x_144 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_31, x_25, x_26, x_119, x_143, x_120); +lean_dec(x_1); +return x_144; +} +} +else +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_106); +lean_dec(x_105); +lean_dec(x_103); lean_dec(x_31); lean_dec(x_26); lean_dec(x_25); lean_dec(x_2); lean_dec(x_1); -x_149 = lean_ctor_get(x_118, 0); -lean_inc(x_149); -x_150 = lean_ctor_get(x_118, 1); -lean_inc(x_150); -if (lean_is_exclusive(x_118)) { - lean_ctor_release(x_118, 0); - lean_ctor_release(x_118, 1); - x_151 = x_118; +x_145 = lean_ctor_get(x_114, 0); +lean_inc(x_145); +x_146 = lean_ctor_get(x_114, 1); +lean_inc(x_146); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + x_147 = x_114; } else { - lean_dec_ref(x_118); - x_151 = lean_box(0); + lean_dec_ref(x_114); + x_147 = lean_box(0); } -if (lean_is_scalar(x_151)) { - x_152 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_147)) { + x_148 = lean_alloc_ctor(1, 2, 0); } else { - x_152 = x_151; + x_148 = x_147; } -lean_ctor_set(x_152, 0, x_149); -lean_ctor_set(x_152, 1, x_150); -return x_152; +lean_ctor_set(x_148, 0, x_145); +lean_ctor_set(x_148, 1, x_146); +return x_148; } } } else { -lean_object* x_153; uint8_t x_154; +lean_object* x_149; uint8_t x_150; lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); @@ -1980,150 +2001,150 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_4); lean_inc(x_2); -x_153 = l_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags(x_1, x_2, x_27, x_3); +x_149 = l_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags(x_1, x_2, x_27, x_3); lean_dec(x_1); -x_154 = !lean_is_exclusive(x_2); -if (x_154 == 0) +x_150 = !lean_is_exclusive(x_2); +if (x_150 == 0) { -lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; -x_155 = lean_ctor_get(x_2, 4); +lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +x_151 = lean_ctor_get(x_2, 4); +lean_dec(x_151); +x_152 = lean_ctor_get(x_2, 3); +lean_dec(x_152); +x_153 = lean_ctor_get(x_2, 2); +lean_dec(x_153); +x_154 = lean_ctor_get(x_2, 1); +lean_dec(x_154); +x_155 = lean_ctor_get(x_2, 0); lean_dec(x_155); -x_156 = lean_ctor_get(x_2, 3); -lean_dec(x_156); -x_157 = lean_ctor_get(x_2, 2); -lean_dec(x_157); -x_158 = lean_ctor_get(x_2, 1); -lean_dec(x_158); -x_159 = lean_ctor_get(x_2, 0); -lean_dec(x_159); -if (lean_obj_tag(x_153) == 0) +if (lean_obj_tag(x_149) == 0) { -uint8_t x_160; -x_160 = !lean_is_exclusive(x_153); -if (x_160 == 0) +uint8_t x_156; +x_156 = !lean_is_exclusive(x_149); +if (x_156 == 0) { -lean_object* x_161; -x_161 = lean_ctor_get(x_153, 0); -lean_ctor_set(x_2, 4, x_161); +lean_object* x_157; +x_157 = lean_ctor_get(x_149, 0); +lean_ctor_set(x_2, 4, x_157); lean_ctor_set(x_2, 2, x_26); lean_ctor_set(x_2, 1, x_25); lean_ctor_set(x_2, 0, x_31); -lean_ctor_set(x_153, 0, x_2); -return x_153; +lean_ctor_set(x_149, 0, x_2); +return x_149; +} +else +{ +lean_object* x_158; lean_object* x_159; lean_object* x_160; +x_158 = lean_ctor_get(x_149, 0); +x_159 = lean_ctor_get(x_149, 1); +lean_inc(x_159); +lean_inc(x_158); +lean_dec(x_149); +lean_ctor_set(x_2, 4, x_158); +lean_ctor_set(x_2, 2, x_26); +lean_ctor_set(x_2, 1, x_25); +lean_ctor_set(x_2, 0, x_31); +x_160 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_160, 0, x_2); +lean_ctor_set(x_160, 1, x_159); +return x_160; +} +} +else +{ +uint8_t x_161; +lean_free_object(x_2); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_7); +x_161 = !lean_is_exclusive(x_149); +if (x_161 == 0) +{ +return x_149; } else { lean_object* x_162; lean_object* x_163; lean_object* x_164; -x_162 = lean_ctor_get(x_153, 0); -x_163 = lean_ctor_get(x_153, 1); +x_162 = lean_ctor_get(x_149, 0); +x_163 = lean_ctor_get(x_149, 1); lean_inc(x_163); lean_inc(x_162); -lean_dec(x_153); -lean_ctor_set(x_2, 4, x_162); -lean_ctor_set(x_2, 2, x_26); -lean_ctor_set(x_2, 1, x_25); -lean_ctor_set(x_2, 0, x_31); -x_164 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_164, 0, x_2); +lean_dec(x_149); +x_164 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_164, 0, x_162); lean_ctor_set(x_164, 1, x_163); return x_164; } } -else -{ -uint8_t x_165; -lean_free_object(x_2); -lean_dec(x_31); -lean_dec(x_26); -lean_dec(x_25); -lean_dec(x_7); -x_165 = !lean_is_exclusive(x_153); -if (x_165 == 0) -{ -return x_153; -} -else -{ -lean_object* x_166; lean_object* x_167; lean_object* x_168; -x_166 = lean_ctor_get(x_153, 0); -x_167 = lean_ctor_get(x_153, 1); -lean_inc(x_167); -lean_inc(x_166); -lean_dec(x_153); -x_168 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_168, 0, x_166); -lean_ctor_set(x_168, 1, x_167); -return x_168; -} -} } else { lean_dec(x_2); -if (lean_obj_tag(x_153) == 0) +if (lean_obj_tag(x_149) == 0) { -lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; -x_169 = lean_ctor_get(x_153, 0); -lean_inc(x_169); -x_170 = lean_ctor_get(x_153, 1); -lean_inc(x_170); -if (lean_is_exclusive(x_153)) { - lean_ctor_release(x_153, 0); - lean_ctor_release(x_153, 1); - x_171 = x_153; +lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; +x_165 = lean_ctor_get(x_149, 0); +lean_inc(x_165); +x_166 = lean_ctor_get(x_149, 1); +lean_inc(x_166); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_167 = x_149; } else { - lean_dec_ref(x_153); - x_171 = lean_box(0); + lean_dec_ref(x_149); + x_167 = lean_box(0); } -x_172 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_172, 0, x_31); -lean_ctor_set(x_172, 1, x_25); -lean_ctor_set(x_172, 2, x_26); -lean_ctor_set(x_172, 3, x_7); -lean_ctor_set(x_172, 4, x_169); -if (lean_is_scalar(x_171)) { - x_173 = lean_alloc_ctor(0, 2, 0); +x_168 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_168, 0, x_31); +lean_ctor_set(x_168, 1, x_25); +lean_ctor_set(x_168, 2, x_26); +lean_ctor_set(x_168, 3, x_7); +lean_ctor_set(x_168, 4, x_165); +if (lean_is_scalar(x_167)) { + x_169 = lean_alloc_ctor(0, 2, 0); } else { - x_173 = x_171; + x_169 = x_167; } -lean_ctor_set(x_173, 0, x_172); -lean_ctor_set(x_173, 1, x_170); -return x_173; +lean_ctor_set(x_169, 0, x_168); +lean_ctor_set(x_169, 1, x_166); +return x_169; } else { -lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_dec(x_31); lean_dec(x_26); lean_dec(x_25); lean_dec(x_7); -x_174 = lean_ctor_get(x_153, 0); -lean_inc(x_174); -x_175 = lean_ctor_get(x_153, 1); -lean_inc(x_175); -if (lean_is_exclusive(x_153)) { - lean_ctor_release(x_153, 0); - lean_ctor_release(x_153, 1); - x_176 = x_153; +x_170 = lean_ctor_get(x_149, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_149, 1); +lean_inc(x_171); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_172 = x_149; } else { - lean_dec_ref(x_153); - x_176 = lean_box(0); + lean_dec_ref(x_149); + x_172 = lean_box(0); } -if (lean_is_scalar(x_176)) { - x_177 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_172)) { + x_173 = lean_alloc_ctor(1, 2, 0); } else { - x_177 = x_176; + x_173 = x_172; } -lean_ctor_set(x_177, 0, x_174); -lean_ctor_set(x_177, 1, x_175); -return x_177; +lean_ctor_set(x_173, 0, x_170); +lean_ctor_set(x_173, 1, x_171); +return x_173; } } } } else { -lean_object* x_178; uint8_t x_179; +lean_object* x_174; uint8_t x_175; lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); @@ -2134,154 +2155,154 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_4); lean_inc(x_2); -x_178 = l_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags(x_1, x_2, x_27, x_3); +x_174 = l_Lean_Server_Snapshots_compileNextCmd_withNewInteractiveDiags(x_1, x_2, x_27, x_3); lean_dec(x_1); -x_179 = !lean_is_exclusive(x_2); -if (x_179 == 0) +x_175 = !lean_is_exclusive(x_2); +if (x_175 == 0) { -lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; -x_180 = lean_ctor_get(x_2, 4); -lean_dec(x_180); -x_181 = lean_ctor_get(x_2, 3); -lean_dec(x_181); -x_182 = lean_ctor_get(x_2, 2); -lean_dec(x_182); -x_183 = lean_ctor_get(x_2, 1); -lean_dec(x_183); -x_184 = lean_ctor_get(x_2, 0); -lean_dec(x_184); -if (lean_obj_tag(x_178) == 0) -{ -uint8_t x_185; -x_185 = !lean_is_exclusive(x_178); -if (x_185 == 0) -{ -lean_object* x_186; -x_186 = lean_ctor_get(x_178, 0); -lean_ctor_set(x_2, 4, x_186); -lean_ctor_set(x_2, 2, x_26); -lean_ctor_set(x_2, 1, x_25); -lean_ctor_set(x_2, 0, x_31); -lean_ctor_set(x_178, 0, x_2); -return x_178; -} -else -{ -lean_object* x_187; lean_object* x_188; lean_object* x_189; -x_187 = lean_ctor_get(x_178, 0); -x_188 = lean_ctor_get(x_178, 1); -lean_inc(x_188); -lean_inc(x_187); +lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; +x_176 = lean_ctor_get(x_2, 4); +lean_dec(x_176); +x_177 = lean_ctor_get(x_2, 3); +lean_dec(x_177); +x_178 = lean_ctor_get(x_2, 2); lean_dec(x_178); -lean_ctor_set(x_2, 4, x_187); +x_179 = lean_ctor_get(x_2, 1); +lean_dec(x_179); +x_180 = lean_ctor_get(x_2, 0); +lean_dec(x_180); +if (lean_obj_tag(x_174) == 0) +{ +uint8_t x_181; +x_181 = !lean_is_exclusive(x_174); +if (x_181 == 0) +{ +lean_object* x_182; +x_182 = lean_ctor_get(x_174, 0); +lean_ctor_set(x_2, 4, x_182); lean_ctor_set(x_2, 2, x_26); lean_ctor_set(x_2, 1, x_25); lean_ctor_set(x_2, 0, x_31); -x_189 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_189, 0, x_2); -lean_ctor_set(x_189, 1, x_188); -return x_189; +lean_ctor_set(x_174, 0, x_2); +return x_174; +} +else +{ +lean_object* x_183; lean_object* x_184; lean_object* x_185; +x_183 = lean_ctor_get(x_174, 0); +x_184 = lean_ctor_get(x_174, 1); +lean_inc(x_184); +lean_inc(x_183); +lean_dec(x_174); +lean_ctor_set(x_2, 4, x_183); +lean_ctor_set(x_2, 2, x_26); +lean_ctor_set(x_2, 1, x_25); +lean_ctor_set(x_2, 0, x_31); +x_185 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_185, 0, x_2); +lean_ctor_set(x_185, 1, x_184); +return x_185; } } else { -uint8_t x_190; +uint8_t x_186; lean_free_object(x_2); lean_dec(x_31); lean_dec(x_26); lean_dec(x_25); lean_dec(x_7); -x_190 = !lean_is_exclusive(x_178); -if (x_190 == 0) +x_186 = !lean_is_exclusive(x_174); +if (x_186 == 0) { -return x_178; +return x_174; } else { -lean_object* x_191; lean_object* x_192; lean_object* x_193; -x_191 = lean_ctor_get(x_178, 0); -x_192 = lean_ctor_get(x_178, 1); -lean_inc(x_192); -lean_inc(x_191); -lean_dec(x_178); -x_193 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_193, 0, x_191); -lean_ctor_set(x_193, 1, x_192); -return x_193; +lean_object* x_187; lean_object* x_188; lean_object* x_189; +x_187 = lean_ctor_get(x_174, 0); +x_188 = lean_ctor_get(x_174, 1); +lean_inc(x_188); +lean_inc(x_187); +lean_dec(x_174); +x_189 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_189, 0, x_187); +lean_ctor_set(x_189, 1, x_188); +return x_189; } } } else { lean_dec(x_2); -if (lean_obj_tag(x_178) == 0) +if (lean_obj_tag(x_174) == 0) { -lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; -x_194 = lean_ctor_get(x_178, 0); -lean_inc(x_194); -x_195 = lean_ctor_get(x_178, 1); -lean_inc(x_195); -if (lean_is_exclusive(x_178)) { - lean_ctor_release(x_178, 0); - lean_ctor_release(x_178, 1); - x_196 = x_178; +lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +x_190 = lean_ctor_get(x_174, 0); +lean_inc(x_190); +x_191 = lean_ctor_get(x_174, 1); +lean_inc(x_191); +if (lean_is_exclusive(x_174)) { + lean_ctor_release(x_174, 0); + lean_ctor_release(x_174, 1); + x_192 = x_174; } else { - lean_dec_ref(x_178); - x_196 = lean_box(0); + lean_dec_ref(x_174); + x_192 = lean_box(0); } -x_197 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_197, 0, x_31); -lean_ctor_set(x_197, 1, x_25); -lean_ctor_set(x_197, 2, x_26); -lean_ctor_set(x_197, 3, x_7); -lean_ctor_set(x_197, 4, x_194); -if (lean_is_scalar(x_196)) { - x_198 = lean_alloc_ctor(0, 2, 0); +x_193 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_193, 0, x_31); +lean_ctor_set(x_193, 1, x_25); +lean_ctor_set(x_193, 2, x_26); +lean_ctor_set(x_193, 3, x_7); +lean_ctor_set(x_193, 4, x_190); +if (lean_is_scalar(x_192)) { + x_194 = lean_alloc_ctor(0, 2, 0); } else { - x_198 = x_196; + x_194 = x_192; } -lean_ctor_set(x_198, 0, x_197); -lean_ctor_set(x_198, 1, x_195); -return x_198; +lean_ctor_set(x_194, 0, x_193); +lean_ctor_set(x_194, 1, x_191); +return x_194; } else { -lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; +lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_dec(x_31); lean_dec(x_26); lean_dec(x_25); lean_dec(x_7); -x_199 = lean_ctor_get(x_178, 0); -lean_inc(x_199); -x_200 = lean_ctor_get(x_178, 1); -lean_inc(x_200); -if (lean_is_exclusive(x_178)) { - lean_ctor_release(x_178, 0); - lean_ctor_release(x_178, 1); - x_201 = x_178; +x_195 = lean_ctor_get(x_174, 0); +lean_inc(x_195); +x_196 = lean_ctor_get(x_174, 1); +lean_inc(x_196); +if (lean_is_exclusive(x_174)) { + lean_ctor_release(x_174, 0); + lean_ctor_release(x_174, 1); + x_197 = x_174; } else { - lean_dec_ref(x_178); - x_201 = lean_box(0); + lean_dec_ref(x_174); + x_197 = lean_box(0); } -if (lean_is_scalar(x_201)) { - x_202 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_197)) { + x_198 = lean_alloc_ctor(1, 2, 0); } else { - x_202 = x_201; + x_198 = x_197; } -lean_ctor_set(x_202, 0, x_199); -lean_ctor_set(x_202, 1, x_200); -return x_202; +lean_ctor_set(x_198, 0, x_195); +lean_ctor_set(x_198, 1, x_196); +return x_198; } } } } } } -LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Server_Snapshots_compileNextCmd___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Lean_Server_Snapshots_compileNextCmd___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Lean_Server_Snapshots_compileNextCmd___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_7); lean_dec(x_1); return x_9; @@ -2376,8 +2397,6 @@ l_Lean_Server_Snapshots_compileNextCmd___closed__4 = _init_l_Lean_Server_Snapsho lean_mark_persistent(l_Lean_Server_Snapshots_compileNextCmd___closed__4); l_Lean_Server_Snapshots_compileNextCmd___closed__5 = _init_l_Lean_Server_Snapshots_compileNextCmd___closed__5(); lean_mark_persistent(l_Lean_Server_Snapshots_compileNextCmd___closed__5); -l_Lean_Server_Snapshots_compileNextCmd___closed__6 = _init_l_Lean_Server_Snapshots_compileNextCmd___closed__6(); -lean_mark_persistent(l_Lean_Server_Snapshots_compileNextCmd___closed__6); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Server/Watchdog.c b/stage0/stdlib/Lean/Server/Watchdog.c index de9b09a81d..3cd2f0b6ff 100644 --- a/stage0/stdlib/Lean/Server/Watchdog.c +++ b/stage0/stdlib/Lean/Server/Watchdog.c @@ -7319,6 +7319,7 @@ lean_inc(x_25); x_26 = lean_ctor_get(x_24, 1); lean_inc(x_26); lean_dec(x_24); +lean_inc(x_18); x_27 = l_Lean_Syntax_structEq(x_25, x_18); if (x_27 == 0) { @@ -7549,6 +7550,7 @@ lean_inc(x_76); x_77 = lean_ctor_get(x_75, 1); lean_inc(x_77); lean_dec(x_75); +lean_inc(x_69); x_78 = l_Lean_Syntax_structEq(x_76, x_69); if (x_78 == 0) { diff --git a/stage0/stdlib/Lean/Util/Path.c b/stage0/stdlib/Lean/Util/Path.c index 9cc602e7ab..a7a7381f29 100644 --- a/stage0/stdlib/Lean/Util/Path.c +++ b/stage0/stdlib/Lean/Util/Path.c @@ -18,19 +18,27 @@ lean_object* lean_string_push(lean_object*, uint32_t); LEAN_EXPORT lean_object* l_Lean_moduleNameOfFileName___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_modToFilePath_go___closed__4; static lean_object* l_Lean_findOLean___closed__3; +static lean_object* l_Lean_findSysroot_x3f___lambda__1___closed__3; static lean_object* l_Lean_modToFilePath_go___closed__1; +lean_object* lean_mk_empty_array_with_capacity(lean_object*); +static lean_object* l_Lean_findSysroot_x3f___closed__1; lean_object* l_System_FilePath_join(lean_object*, lean_object*); lean_object* lean_name_mk_string(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_modToFilePath_go___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* lean_init_search_path(lean_object*); extern uint8_t l_System_FilePath_isCaseInsensitive; LEAN_EXPORT lean_object* l_Lean_SearchPath_findWithExt___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_searchPathRef; +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f(lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); lean_object* l_System_FilePath_components(lean_object*); -LEAN_EXPORT lean_object* l_Lean_getBuiltinSearchPath(lean_object*); +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getBuiltinSearchPath(lean_object*, lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_modToFilePath_go(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_moduleNameOfFileName___lambda__3(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_findSysroot_x3f___lambda__1___closed__5; static lean_object* l_Lean_moduleNameOfFileName___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_findOLean(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_modToFilePath___boxed(lean_object*, lean_object*, lean_object*); @@ -60,15 +68,16 @@ static lean_object* l_Lean_findOLean___closed__2; LEAN_EXPORT lean_object* l_Lean_SearchPath_findWithExt(lean_object*, lean_object*, lean_object*, lean_object*); extern uint32_t l_System_FilePath_pathSeparator; LEAN_EXPORT lean_object* lean_module_name_of_file(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* lean_get_libdir(lean_object*); +LEAN_EXPORT lean_object* lean_get_libdir(lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_realPathNormalized(lean_object*, lean_object*); LEAN_EXPORT lean_object* lean_get_prefix(lean_object*); static lean_object* l_Lean_moduleNameOfFileName___lambda__2___closed__3; static lean_object* l_Lean_findOLean___closed__4; +lean_object* l_IO_Process_run(lean_object*, lean_object*); static lean_object* l_Lean_moduleNameOfFileName___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_findOLean___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* lean_init_search_path(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_initSearchPath(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_findOLean___closed__1; LEAN_EXPORT lean_object* l_Lean_findOLean___boxed(lean_object*, lean_object*); lean_object* lean_io_current_dir(lean_object*); @@ -82,8 +91,10 @@ static lean_object* l_Lean_findOLean_maybeThisOne___closed__1; lean_object* l_System_FilePath_isDir(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_modToFilePath(lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_findSysroot_x3f___lambda__1___closed__2; LEAN_EXPORT uint8_t l___private_Lean_Util_Path_0__Lean_isStage0(lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); +lean_object* l_String_trim(lean_object*); static lean_object* l_Lean_moduleNameOfFileName___lambda__2___closed__2; static lean_object* l_Lean_getBuildDir___closed__1; static lean_object* l_Lean_getLibDir___closed__3; @@ -94,8 +105,11 @@ lean_object* l_System_FilePath_withExtension(lean_object*, lean_object*); lean_object* l_IO_mkRef___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_findOLean_maybeThisOne(lean_object*, lean_object*, lean_object*); lean_object* l_String_drop(lean_object*, lean_object*); +static lean_object* l_Lean_findSysroot_x3f___lambda__1___closed__4; LEAN_EXPORT lean_object* l_List_findM_x3f___at_Lean_SearchPath_findWithExt___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_getRoot(lean_object*); +static lean_object* l_Lean_findSysroot_x3f___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getBuildDir___closed__2; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); static lean_object* l_Lean_getLibDir___lambda__1___closed__2; @@ -702,61 +716,29 @@ x_1 = lean_mk_string("stage1"); return x_1; } } -LEAN_EXPORT lean_object* lean_get_libdir(lean_object* x_1) { +LEAN_EXPORT lean_object* lean_get_libdir(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_2; -x_2 = lean_get_prefix(x_1); -if (lean_obj_tag(x_2) == 0) +lean_object* x_3; uint8_t x_4; +x_3 = l_Lean_getLibDir___closed__1; +x_4 = l_Lean_getLibDir___closed__2; +if (x_4 == 0) { -lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; -x_3 = lean_ctor_get(x_2, 0); -lean_inc(x_3); -x_4 = lean_ctor_get(x_2, 1); -lean_inc(x_4); -lean_dec(x_2); -x_5 = l_Lean_getLibDir___closed__1; -x_6 = l_Lean_getLibDir___closed__2; -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; -x_7 = lean_box(0); -x_8 = lean_apply_3(x_5, x_3, x_7, x_4); -return x_8; +lean_object* x_5; lean_object* x_6; +x_5 = lean_box(0); +x_6 = lean_apply_3(x_3, x_1, x_5, x_2); +return x_6; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_9 = l_Lean_getLibDir___closed__3; -x_10 = l_System_FilePath_join(x_3, x_9); -x_11 = l_Lean_getLibDir___closed__4; -x_12 = l_System_FilePath_join(x_10, x_11); -x_13 = lean_box(0); -x_14 = lean_apply_3(x_5, x_12, x_13, x_4); -return x_14; -} -} -else -{ -uint8_t x_15; -x_15 = !lean_is_exclusive(x_2); -if (x_15 == 0) -{ -return x_2; -} -else -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_2, 0); -x_17 = lean_ctor_get(x_2, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_2); -x_18 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_18, 0, x_16); -lean_ctor_set(x_18, 1, x_17); -return x_18; -} +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_7 = l_Lean_getLibDir___closed__3; +x_8 = l_System_FilePath_join(x_1, x_7); +x_9 = l_Lean_getLibDir___closed__4; +x_10 = l_System_FilePath_join(x_8, x_9); +x_11 = lean_box(0); +x_12 = lean_apply_3(x_3, x_10, x_11, x_2); +return x_12; } } } @@ -769,64 +751,64 @@ lean_dec(x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_getBuiltinSearchPath(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_getBuiltinSearchPath(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_2; -x_2 = lean_get_libdir(x_1); -if (lean_obj_tag(x_2) == 0) +lean_object* x_3; +x_3 = lean_get_libdir(x_1, x_2); +if (lean_obj_tag(x_3) == 0) { -uint8_t x_3; -x_3 = !lean_is_exclusive(x_2); -if (x_3 == 0) +uint8_t x_4; +x_4 = !lean_is_exclusive(x_3); +if (x_4 == 0) { -lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = lean_ctor_get(x_2, 0); -x_5 = lean_box(0); -x_6 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_6, 0, x_4); -lean_ctor_set(x_6, 1, x_5); -lean_ctor_set(x_2, 0, x_6); -return x_2; +lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_5 = lean_ctor_get(x_3, 0); +x_6 = lean_box(0); +x_7 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_7, 0, x_5); +lean_ctor_set(x_7, 1, x_6); +lean_ctor_set(x_3, 0, x_7); +return x_3; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_7 = lean_ctor_get(x_2, 0); -x_8 = lean_ctor_get(x_2, 1); +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_8 = lean_ctor_get(x_3, 0); +x_9 = lean_ctor_get(x_3, 1); +lean_inc(x_9); lean_inc(x_8); -lean_inc(x_7); -lean_dec(x_2); -x_9 = lean_box(0); -x_10 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_10, 0, x_7); -lean_ctor_set(x_10, 1, x_9); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_8); -return x_11; +lean_dec(x_3); +x_10 = lean_box(0); +x_11 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_11, 0, x_8); +lean_ctor_set(x_11, 1, x_10); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_9); +return x_12; } } else { -uint8_t x_12; -x_12 = !lean_is_exclusive(x_2); -if (x_12 == 0) +uint8_t x_13; +x_13 = !lean_is_exclusive(x_3); +if (x_13 == 0) { -return x_2; +return x_3; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_2, 0); -x_14 = lean_ctor_get(x_2, 1); +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_3, 0); +x_15 = lean_ctor_get(x_3, 1); +lean_inc(x_15); lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_2); -x_15 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_15, 0, x_13); -lean_ctor_set(x_15, 1, x_14); -return x_15; +lean_dec(x_3); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; } } } @@ -934,123 +916,136 @@ return x_23; } } } -LEAN_EXPORT lean_object* lean_init_search_path(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_initSearchPath(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -if (lean_obj_tag(x_1) == 0) +lean_object* x_4; +x_4 = l_Lean_getBuiltinSearchPath(x_1, x_3); +if (lean_obj_tag(x_4) == 0) { -lean_object* x_3; -x_3 = l_Lean_getBuiltinSearchPath(x_2); -if (lean_obj_tag(x_3) == 0) -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = lean_ctor_get(x_3, 0); -lean_inc(x_4); -x_5 = lean_ctor_get(x_3, 1); +lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); -lean_dec(x_3); -x_6 = l_Lean_addSearchPathFromEnv(x_4, x_5); -if (lean_obj_tag(x_6) == 0) +x_6 = lean_ctor_get(x_4, 1); +lean_inc(x_6); +lean_dec(x_4); +x_7 = l_Lean_addSearchPathFromEnv(x_5, x_6); +if (lean_obj_tag(x_7) == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_searchPathRef; -x_10 = lean_st_ref_set(x_9, x_7, x_8); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_List_appendTR___rarg(x_2, x_8); +x_11 = l_Lean_searchPathRef; +x_12 = lean_st_ref_set(x_11, x_10, x_9); +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) { -return x_10; +return x_12; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_10); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -return x_14; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_12); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; } } else { -uint8_t x_15; -x_15 = !lean_is_exclusive(x_6); -if (x_15 == 0) +uint8_t x_17; +lean_dec(x_2); +x_17 = !lean_is_exclusive(x_7); +if (x_17 == 0) { +return x_7; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_7, 0); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_7); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +return x_20; +} +} +} +else +{ +uint8_t x_21; +lean_dec(x_2); +x_21 = !lean_is_exclusive(x_4); +if (x_21 == 0) +{ +return x_4; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_4, 0); +x_23 = lean_ctor_get(x_4, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_4); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +} +LEAN_EXPORT lean_object* lean_init_search_path(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_get_prefix(x_1); +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_3 = lean_ctor_get(x_2, 0); +lean_inc(x_3); +x_4 = lean_ctor_get(x_2, 1); +lean_inc(x_4); +lean_dec(x_2); +x_5 = lean_box(0); +x_6 = l_Lean_initSearchPath(x_3, x_5, x_4); return x_6; } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_6, 0); -x_17 = lean_ctor_get(x_6, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_6); -x_18 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_18, 0, x_16); -lean_ctor_set(x_18, 1, x_17); -return x_18; -} -} +uint8_t x_7; +x_7 = !lean_is_exclusive(x_2); +if (x_7 == 0) +{ +return x_2; } else { -uint8_t x_19; -x_19 = !lean_is_exclusive(x_3); -if (x_19 == 0) -{ -return x_3; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_3, 0); -x_21 = lean_ctor_get(x_3, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_3); -x_22 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -return x_22; -} -} -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_23 = lean_ctor_get(x_1, 0); -lean_inc(x_23); -lean_dec(x_1); -x_24 = l_System_SearchPath_parse(x_23); -x_25 = l_Lean_searchPathRef; -x_26 = lean_st_ref_set(x_25, x_24, x_2); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) -{ -return x_26; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_26, 0); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_26); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_2, 0); +x_9 = lean_ctor_get(x_2, 1); +lean_inc(x_9); +lean_inc(x_8); +lean_dec(x_2); +x_10 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +return x_10; } } } @@ -1623,6 +1618,217 @@ lean_dec(x_1); return x_5; } } +static lean_object* _init_l_Lean_findSysroot_x3f___lambda__1___closed__1() { +_start: +{ +uint8_t x_1; lean_object* x_2; +x_1 = 1; +x_2 = lean_alloc_ctor(0, 0, 3); +lean_ctor_set_uint8(x_2, 0, x_1); +lean_ctor_set_uint8(x_2, 1, x_1); +lean_ctor_set_uint8(x_2, 2, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_findSysroot_x3f___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(1u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_findSysroot_x3f___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("--print-prefix"); +return x_1; +} +} +static lean_object* _init_l_Lean_findSysroot_x3f___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_findSysroot_x3f___lambda__1___closed__2; +x_2 = l_Lean_findSysroot_x3f___lambda__1___closed__3; +x_3 = lean_array_push(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_findSysroot_x3f___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_4 = lean_box(0); +x_5 = l_Lean_findSysroot_x3f___lambda__1___closed__1; +x_6 = l_Lean_findSysroot_x3f___lambda__1___closed__4; +x_7 = l_Lean_findSysroot_x3f___lambda__1___closed__5; +x_8 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_8, 0, x_5); +lean_ctor_set(x_8, 1, x_1); +lean_ctor_set(x_8, 2, x_6); +lean_ctor_set(x_8, 3, x_4); +lean_ctor_set(x_8, 4, x_7); +x_9 = l_IO_Process_run(x_8, x_3); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +x_12 = l_String_trim(x_11); +lean_dec(x_11); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_9, 0); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_9); +x_15 = l_String_trim(x_13); +lean_dec(x_13); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_9); +if (x_17 == 0) +{ +return x_9; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_9, 0); +x_19 = lean_ctor_get(x_9, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_9); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +return x_20; +} +} +} +} +static lean_object* _init_l_Lean_findSysroot_x3f___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("LEAN_SYSROOT"); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; +x_3 = l_Lean_findSysroot_x3f___closed__1; +x_4 = lean_io_getenv(x_3, x_2); +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_5; +x_5 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_ctor_get(x_4, 1); +lean_inc(x_6); +lean_dec(x_4); +x_7 = lean_box(0); +x_8 = l_Lean_findSysroot_x3f___lambda__1(x_1, x_7, x_6); +return x_8; +} +else +{ +uint8_t x_9; +lean_dec(x_1); +x_9 = !lean_is_exclusive(x_4); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_4, 0); +lean_dec(x_10); +x_11 = lean_ctor_get(x_5, 0); +lean_inc(x_11); +lean_dec(x_5); +lean_ctor_set(x_4, 0, x_11); +return x_4; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_4, 1); +lean_inc(x_12); +lean_dec(x_4); +x_13 = lean_ctor_get(x_5, 0); +lean_inc(x_13); +lean_dec(x_5); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_12); +return x_14; +} +} +} +else +{ +uint8_t x_15; +lean_dec(x_1); +x_15 = !lean_is_exclusive(x_4); +if (x_15 == 0) +{ +return x_4; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_4, 0); +x_17 = lean_ctor_get(x_4, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_4); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_findSysroot_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_findSysroot_x3f___lambda__1(x_1, x_2, x_3); +lean_dec(x_2); +return x_4; +} +} lean_object* initialize_Init(lean_object*); lean_object* initialize_Lean_Data_Name(lean_object*); static bool _G_initialized = false; @@ -1692,6 +1898,18 @@ l_Lean_moduleNameOfFileName___lambda__2___closed__3 = _init_l_Lean_moduleNameOfF lean_mark_persistent(l_Lean_moduleNameOfFileName___lambda__2___closed__3); l_Lean_moduleNameOfFileName___lambda__3___closed__1 = _init_l_Lean_moduleNameOfFileName___lambda__3___closed__1(); lean_mark_persistent(l_Lean_moduleNameOfFileName___lambda__3___closed__1); +l_Lean_findSysroot_x3f___lambda__1___closed__1 = _init_l_Lean_findSysroot_x3f___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_findSysroot_x3f___lambda__1___closed__1); +l_Lean_findSysroot_x3f___lambda__1___closed__2 = _init_l_Lean_findSysroot_x3f___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_findSysroot_x3f___lambda__1___closed__2); +l_Lean_findSysroot_x3f___lambda__1___closed__3 = _init_l_Lean_findSysroot_x3f___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_findSysroot_x3f___lambda__1___closed__3); +l_Lean_findSysroot_x3f___lambda__1___closed__4 = _init_l_Lean_findSysroot_x3f___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_findSysroot_x3f___lambda__1___closed__4); +l_Lean_findSysroot_x3f___lambda__1___closed__5 = _init_l_Lean_findSysroot_x3f___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_findSysroot_x3f___lambda__1___closed__5); +l_Lean_findSysroot_x3f___closed__1 = _init_l_Lean_findSysroot_x3f___closed__1(); +lean_mark_persistent(l_Lean_findSysroot_x3f___closed__1); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus