chore: update stage0

This commit is contained in:
Leonardo de Moura 2024-02-25 09:55:31 -08:00 committed by Leonardo de Moura
parent 5514b8f1fd
commit 02e4fe0b1c
110 changed files with 121188 additions and 75957 deletions

View file

@ -299,13 +299,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
cmake_path(GET ZLIB_LIBRARY PARENT_PATH ZLIB_LIBRARY_PARENT_PATH)
string(APPEND LEANSHARED_LINKER_FLAGS " -L ${ZLIB_LIBRARY_PARENT_PATH}")
endif()
string(APPEND LEANC_STATIC_LINKER_FLAGS " -lleancpp -lInit -lLean -lleanrt")
string(APPEND TOOLCHAIN_STATIC_LINKER_FLAGS " -lleancpp -lInit -lLean -lleanrt")
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
string(APPEND LEANC_STATIC_LINKER_FLAGS " -lleancpp -lInit -lLean -lnodefs.js -lleanrt")
string(APPEND TOOLCHAIN_STATIC_LINKER_FLAGS " -lleancpp -lInit -lLean -lnodefs.js -lleanrt")
else()
string(APPEND LEANC_STATIC_LINKER_FLAGS " -Wl,--start-group -lleancpp -lLean -Wl,--end-group -Wl,--start-group -lInit -lleanrt -Wl,--end-group")
string(APPEND TOOLCHAIN_STATIC_LINKER_FLAGS " -Wl,--start-group -lleancpp -lLean -Wl,--end-group -Wl,--start-group -lInit -lleanrt -Wl,--end-group")
endif()
string(APPEND LEANC_STATIC_LINKER_FLAGS " -lLake")
set(LEAN_CXX_STDLIB "-lstdc++" CACHE STRING "C++ stdlib linker flags")
@ -313,8 +312,11 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(LEAN_CXX_STDLIB "-lc++")
endif()
string(APPEND LEANC_STATIC_LINKER_FLAGS " ${LEAN_CXX_STDLIB}")
string(APPEND LEANSHARED_LINKER_FLAGS " ${LEAN_CXX_STDLIB}")
string(APPEND TOOLCHAIN_STATIC_LINKER_FLAGS " ${LEAN_CXX_STDLIB}")
string(APPEND TOOLCHAIN_SHARED_LINKER_FLAGS " ${LEAN_CXX_STDLIB}")
# flags for user binaries = flags for toolchain binaries + Lake
string(APPEND LEANC_STATIC_LINKER_FLAGS " ${TOOLCHAIN_STATIC_LINKER_FLAGS} -lLake")
if (LLVM)
string(APPEND LEANSHARED_LINKER_FLAGS " -L${LLVM_CONFIG_LIBDIR} ${LLVM_CONFIG_LDFLAGS} ${LLVM_CONFIG_LIBS} ${LLVM_CONFIG_SYSTEM_LIBS}")
@ -342,9 +344,9 @@ endif()
# get rid of unused parts of C++ stdlib
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-dead_strip")
string(APPEND TOOLCHAIN_SHARED_LINKER_FLAGS " -Wl,-dead_strip")
elseif(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,--gc-sections")
string(APPEND TOOLCHAIN_SHARED_LINKER_FLAGS " -Wl,--gc-sections")
endif()
if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
@ -354,26 +356,20 @@ endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
if(BSYMBOLIC)
string(APPEND LEANC_SHARED_LINKER_FLAGS " -Wl,-Bsymbolic")
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-Bsymbolic")
string(APPEND TOOLCHAIN_SHARED_LINKER_FLAGS " -Wl,-Bsymbolic")
endif()
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 " -lleanshared -Wl,-rpath=\\\$ORIGIN/../lib:\\\$ORIGIN/../lib/lean")
string(APPEND TOOLCHAIN_SHARED_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")
string(APPEND CMAKE_CXX_FLAGS " -ftls-model=initial-exec")
string(APPEND INIT_SHARED_LINKER_FLAGS " -install_name @rpath/libInit_shared.dylib")
string(APPEND LEANSHARED_LINKER_FLAGS " -install_name @rpath/libleanshared.dylib")
string(APPEND CMAKE_EXE_LINKER_FLAGS " -lleanshared -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../lib/lean")
string(APPEND CMAKE_EXE_LINKER_FLAGS " -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../lib/lean")
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
string(APPEND CMAKE_CXX_FLAGS " -fPIC")
string(APPEND LEANC_EXTRA_FLAGS " -fPIC")
# We do not use dynamic linking via leanshared for Emscripten to keep things
# simple. (And we are not interested in `Lake` anyway.) To use dynamic
# linking, we would probably have to set MAIN_MODULE=2 on `leanshared`,
# SIDE_MODULE=2 on `lean`, and set CMAKE_SHARED_LIBRARY_SUFFIX to ".js".
string(APPEND CMAKE_EXE_LINKER_FLAGS " -Wl,--whole-archive -lInit -lLean -lleancpp -lleanrt ${EMSCRIPTEN_SETTINGS} -lnodefs.js -s EXIT_RUNTIME=1 -s MAIN_MODULE=1 -s LINKABLE=1 -s EXPORT_ALL=1")
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
string(APPEND CMAKE_EXE_LINKER_FLAGS " -lleanshared")
endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
@ -399,7 +395,7 @@ 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
string(APPEND LEANC_SHARED_LINKER_FLAGS " -lleanshared")
string(APPEND LEANC_SHARED_LINKER_FLAGS " -lInit_shared -lleanshared")
elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin")
string(APPEND LEANC_SHARED_LINKER_FLAGS " -Wl,-undefined,dynamic_lookup")
endif()
@ -506,13 +502,31 @@ string(REGEX REPLACE "^([a-zA-Z]):" "/\\1" LEAN_BIN "${CMAKE_BINARY_DIR}/bin")
file(RELATIVE_PATH LIB ${LEAN_SOURCE_DIR} ${CMAKE_BINARY_DIR}/lib)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(LEANSHARED_LINKER_FLAGS "-Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libInit.a -Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libLean.a -Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libleancpp.a ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a ${LEANSHARED_LINKER_FLAGS}")
string(APPEND INIT_SHARED_LINKER_FLAGS " -Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libInit.a -Wl,-force_load,${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a")
else()
set(LEANSHARED_LINKER_FLAGS "-Wl,--whole-archive -lInit -lLean -lleancpp -Wl,--no-whole-archive ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a ${LEANSHARED_LINKER_FLAGS}")
string(APPEND INIT_SHARED_LINKER_FLAGS " -Wl,--whole-archive -lInit ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a -Wl,--no-whole-archive")
if(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
string(APPEND INIT_SHARED_LINKER_FLAGS " -Wl,--out-implib,${CMAKE_BINARY_DIR}/lib/lean/libInit_shared.dll.a")
endif()
endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libLean.a -Wl,-force_load,${CMAKE_BINARY_DIR}/lib/lean/libleancpp.a")
else()
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,--whole-archive -lLean -lleancpp -Wl,--no-whole-archive")
if(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
string(APPEND LEANSHARED_LINKER_FLAGS " -Wl,--out-implib,${CMAKE_BINARY_DIR}/lib/lean/libleanshared.dll.a")
endif()
endif()
string(APPEND LEANSHARED_LINKER_FLAGS " -lInit_shared")
if (${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
# We do not use dynamic linking via leanshared for Emscripten to keep things
# simple. (And we are not interested in `Lake` anyway.) To use dynamic
# linking, we would probably have to set MAIN_MODULE=2 on `leanshared`,
# SIDE_MODULE=2 on `lean`, and set CMAKE_SHARED_LIBRARY_SUFFIX to ".js".
string(APPEND LEAN_EXE_LINKER_FLAGS " ${TOOLCHAIN_STATIC_LINKER_FLAGS} ${EMSCRIPTEN_SETTINGS} -lnodefs.js -s EXIT_RUNTIME=1 -s MAIN_MODULE=1 -s LINKABLE=1 -s EXPORT_ALL=1")
endif()
# Build the compiler using the bootstrapped C sources for stage0, and use
# the LLVM build for stage1 and further.
@ -520,10 +534,6 @@ if (LLVM AND ${STAGE} GREATER 0)
set(EXTRA_LEANMAKE_OPTS "LLVM=1")
endif()
# Escape for `make`. Yes, twice.
string(REPLACE "$" "$$" CMAKE_EXE_LINKER_FLAGS_MAKE "${CMAKE_EXE_LINKER_FLAGS}")
string(REPLACE "$" "$$" CMAKE_EXE_LINKER_FLAGS_MAKE_MAKE "${CMAKE_EXE_LINKER_FLAGS_MAKE}")
configure_file(${LEAN_SOURCE_DIR}/stdlib.make.in ${CMAKE_BINARY_DIR}/stdlib.make)
add_custom_target(make_stdlib ALL
WORKING_DIRECTORY ${LEAN_SOURCE_DIR}
# The actual rule is in a separate makefile because we want to prefix it with '+' to use the Make job server
@ -541,13 +551,33 @@ endif()
# We declare these as separate custom targets so they use separate `make` invocations, which makes `make` recompute which dependencies
# (e.g. `libLean.a`) are now newer than the target file
add_custom_target(leanshared ALL
WORKING_DIRECTORY ${LEAN_SOURCE_DIR}
DEPENDS make_stdlib leancpp leanrt_initial-exec
COMMAND $(MAKE) -f ${CMAKE_BINARY_DIR}/stdlib.make leanshared
VERBATIM)
if(${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
# dummy targets, see `MAIN_MODULE` discussion above
add_custom_target(Init_shared ALL
DEPENDS make_stdlib leanrt_initial-exec
COMMAND touch ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libInit_shared${CMAKE_SHARED_LIBRARY_SUFFIX}
)
add_custom_target(leanshared ALL
DEPENDS Init_shared leancpp
COMMAND touch ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX}
)
else()
add_custom_target(Init_shared ALL
WORKING_DIRECTORY ${LEAN_SOURCE_DIR}
DEPENDS make_stdlib leanrt_initial-exec
COMMAND $(MAKE) -f ${CMAKE_BINARY_DIR}/stdlib.make Init_shared
VERBATIM)
if(${STAGE} GREATER 0)
add_custom_target(leanshared ALL
WORKING_DIRECTORY ${LEAN_SOURCE_DIR}
DEPENDS Init_shared leancpp
COMMAND $(MAKE) -f ${CMAKE_BINARY_DIR}/stdlib.make leanshared
VERBATIM)
string(APPEND CMAKE_EXE_LINKER_FLAGS " -lInit_shared -lleanshared")
endif()
if(${STAGE} GREATER 0 AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
if(NOT EXISTS ${LEAN_SOURCE_DIR}/lake/Lake.lean)
message(FATAL_ERROR "src/lake does not exist. Please check out the Lake submodule using `git submodule update --init src/lake`.")
endif()
@ -568,7 +598,7 @@ endif()
# use Bash version for building, use Lean version in bin/ for tests & distribution
configure_file("${LEAN_SOURCE_DIR}/bin/leanc.in" "${CMAKE_BINARY_DIR}/leanc.sh" @ONLY)
if(${STAGE} GREATER 0 AND EXISTS ${LEAN_SOURCE_DIR}/Leanc.lean)
if(${STAGE} GREATER 0 AND EXISTS ${LEAN_SOURCE_DIR}/Leanc.lean AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
configure_file("${LEAN_SOURCE_DIR}/Leanc.lean" "${CMAKE_BINARY_DIR}/leanc/Leanc.lean" @ONLY)
add_custom_target(leanc ALL
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/leanc
@ -619,3 +649,8 @@ if(LEAN_INSTALL_PREFIX)
set(LEAN_INSTALL_SUFFIX "-${LOWER_SYSTEM_NAME}" CACHE STRING "If LEAN_INSTALL_PREFIX is set, append this value to CMAKE_INSTALL_PREFIX")
set(CMAKE_INSTALL_PREFIX "${LEAN_INSTALL_PREFIX}/lean-${LEAN_VERSION_STRING}${LEAN_INSTALL_SUFFIX}")
endif()
# Escape for `make`. Yes, twice.
string(REPLACE "$" "$$" CMAKE_EXE_LINKER_FLAGS_MAKE "${CMAKE_EXE_LINKER_FLAGS}")
string(REPLACE "$" "$$" CMAKE_EXE_LINKER_FLAGS_MAKE_MAKE "${CMAKE_EXE_LINKER_FLAGS_MAKE}")
configure_file(${LEAN_SOURCE_DIR}/stdlib.make.in ${CMAKE_BINARY_DIR}/stdlib.make)

View file

@ -7,5 +7,5 @@ Author: Leonardo de Moura
#pragma once
#include "runtime/object.h"
namespace lean {
object * curry(void * f, unsigned n, object ** as);
LEAN_EXPORT object * curry(void * f, unsigned n, object ** as);
}

View file

@ -13,7 +13,7 @@ Author: Leonardo de Moura
namespace lean {
typedef lean_object * object_offset;
class object_compactor {
class LEAN_EXPORT object_compactor {
struct max_sharing_table;
friend struct max_sharing_hash;
friend struct max_sharing_eq;
@ -55,7 +55,7 @@ public:
void const * data() const { return m_begin; }
};
class compacted_region {
class LEAN_EXPORT compacted_region {
// see `object_compactor::m_base_addr`
void * m_base_addr;
bool m_is_mmap;

View file

@ -27,89 +27,20 @@ Author: Leonardo de Moura
#define lean_verify(COND) (COND)
#endif
// LEAN_NARG(ARGS...) return the number of arguments.
// This is a hack based on the following stackoverflow post:
// http://stackoverflow.com/questions/11317474/macro-to-count-number-of-arguments
#define LEAN_COMMASEQ_N() 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0
#define LEAN_RSEQ_N() 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
#define LEAN_ARG_N(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, N, ...) N
#define LEAN_EXPAND(x) x
#ifdef _MSC_VER
#define LEAN_AUGMENT(...) dummy, __VA_ARGS__
#define LEAN_NARG_1(...) LEAN_EXPAND(LEAN_ARG_N(__VA_ARGS__, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0))
#define LEAN_NARG(...) LEAN_NARG_1(LEAN_AUGMENT(__VA_ARGS__))
#else
#define LEAN_NARG_(ARGS...) LEAN_ARG_N(ARGS)
#define LEAN_HASCOMMA(ARGS...) LEAN_NARG_(ARGS, LEAN_COMMASEQ_N())
#define LEAN_COMMA() ,
#define LEAN_NARG_HELPER3_01(N) 0
#define LEAN_NARG_HELPER3_00(N) 1
#define LEAN_NARG_HELPER3_11(N) N
#define LEAN_NARG_HELPER2(a, b, N) LEAN_NARG_HELPER3_ ## a ## b(N)
#define LEAN_NARG_HELPER1(a, b, N) LEAN_NARG_HELPER2(a, b, N)
#define LEAN_NARG(ARGS...) LEAN_NARG_HELPER1(LEAN_HASCOMMA(ARGS), LEAN_HASCOMMA(LEAN_COMMA ARGS ()), LEAN_NARG_(ARGS, LEAN_RSEQ_N()))
#endif
// Hack for LEAN_DISPLAY(ARGS...)
// It works for at most 16 arguments.
#define LEAN_DISPLAY1_CORE(V) lean::debug::display_var(#V, V);
#define LEAN_DISPLAY2_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY1_CORE(__VA_ARGS__))
#define LEAN_DISPLAY3_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY2_CORE(__VA_ARGS__))
#define LEAN_DISPLAY4_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY3_CORE(__VA_ARGS__))
#define LEAN_DISPLAY5_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY4_CORE(__VA_ARGS__))
#define LEAN_DISPLAY6_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY5_CORE(__VA_ARGS__))
#define LEAN_DISPLAY7_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY6_CORE(__VA_ARGS__))
#define LEAN_DISPLAY8_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY7_CORE(__VA_ARGS__))
#define LEAN_DISPLAY9_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY8_CORE(__VA_ARGS__))
#define LEAN_DISPLAY10_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY9_CORE(__VA_ARGS__))
#define LEAN_DISPLAY11_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY10_CORE(__VA_ARGS__))
#define LEAN_DISPLAY12_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY11_CORE(__VA_ARGS__))
#define LEAN_DISPLAY13_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY12_CORE(__VA_ARGS__))
#define LEAN_DISPLAY14_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY13_CORE(__VA_ARGS__))
#define LEAN_DISPLAY15_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY14_CORE(__VA_ARGS__))
#define LEAN_DISPLAY16_CORE(V, ...) lean::debug::display_var(#V, V); LEAN_EXPAND(LEAN_DISPLAY15_CORE(__VA_ARGS__))
#define LEAN_DISPLAY0(...)
#define LEAN_DISPLAY1(ARG) std::cerr << "Argument\n"; LEAN_DISPLAY1_CORE(ARG)
#define LEAN_DISPLAY2(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY2_CORE(__VA_ARGS__))
#define LEAN_DISPLAY3(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY3_CORE(__VA_ARGS__))
#define LEAN_DISPLAY4(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY4_CORE(__VA_ARGS__))
#define LEAN_DISPLAY5(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY5_CORE(__VA_ARGS__))
#define LEAN_DISPLAY6(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY6_CORE(__VA_ARGS__))
#define LEAN_DISPLAY7(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY7_CORE(__VA_ARGS__))
#define LEAN_DISPLAY8(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY8_CORE(__VA_ARGS__))
#define LEAN_DISPLAY9(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY9_CORE(__VA_ARGS__))
#define LEAN_DISPLAY10(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY10_CORE(__VA_ARGS__))
#define LEAN_DISPLAY11(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY11_CORE(__VA_ARGS__))
#define LEAN_DISPLAY12(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY12_CORE(__VA_ARGS__))
#define LEAN_DISPLAY13(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY13_CORE(__VA_ARGS__))
#define LEAN_DISPLAY14(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY14_CORE(__VA_ARGS__))
#define LEAN_DISPLAY15(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY15_CORE(__VA_ARGS__))
#define LEAN_DISPLAY16(...) std::cerr << "Arguments\n"; LEAN_EXPAND(LEAN_DISPLAY16_CORE(__VA_ARGS__))
#define LEAN_JOIN0(A, B) A ## B
#define LEAN_JOIN(A, B) LEAN_JOIN0(A, B)
#define LEAN_DISPLAY(...) { LEAN_JOIN(LEAN_DISPLAY, LEAN_NARG(__VA_ARGS__))(__VA_ARGS__) }
#define lean_assert(COND, ...) DEBUG_CODE({if (LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); LEAN_DISPLAY(__VA_ARGS__); lean::invoke_debugger(); }})
#define lean_cond_assert(TAG, COND, ...) DEBUG_CODE({if (lean::is_debug_enabled(TAG) && LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); LEAN_DISPLAY(__VA_ARGS__); lean::invoke_debugger(); }})
#define lean_always_assert(COND, ...) { if (LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); LEAN_DISPLAY(__VA_ARGS__); lean_unreachable(); } }
#define lean_assert_eq(A, B) lean_assert(A == B, A, B)
#define lean_assert_ne(A, B) lean_assert(A != B, A, B)
#define lean_assert_gt(A, B) lean_assert(A > B, A, B)
#define lean_assert_lt(A, B) lean_assert(A < B, A, B)
#define lean_assert_ge(A, B) lean_assert(A >= B, A, B)
#define lean_assert_le(A, B) lean_assert(A <= B, A, B)
#define lean_assert(COND) DEBUG_CODE({if (LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); lean::invoke_debugger(); }})
#define lean_cond_assert(TAG, COND) DEBUG_CODE({if (lean::is_debug_enabled(TAG) && LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); lean::invoke_debugger(); }})
#define lean_always_assert(COND) { if (LEAN_UNLIKELY(!(COND))) { lean::notify_assertion_violation(__FILE__, __LINE__, #COND); lean_unreachable(); } }
namespace lean {
void initialize_debug();
void finalize_debug();
void notify_assertion_violation(char const * file_name, int line, char const * condition);
void enable_debug(char const * tag);
void disable_debug(char const * tag);
bool is_debug_enabled(char const * tag);
void invoke_debugger();
bool has_violations();
void enable_debug_dialog(bool flag);
LEAN_EXPORT void notify_assertion_violation(char const * file_name, int line, char const * condition);
LEAN_EXPORT void enable_debug(char const * tag);
LEAN_EXPORT void disable_debug(char const * tag);
LEAN_EXPORT bool is_debug_enabled(char const * tag);
LEAN_EXPORT void invoke_debugger();
LEAN_EXPORT bool has_violations();
LEAN_EXPORT void enable_debug_dialog(bool flag);
// LCOV_EXCL_START
/** \brief Exception used to sign that unreachable code was reached */
class unreachable_reached : public exception {
@ -118,12 +49,5 @@ public:
virtual ~unreachable_reached() noexcept {}
virtual char const * what() const noexcept { return "'unreachable' code was reached"; }
};
namespace debug {
template<typename T> void display_var(char const * name, T const & value) {
// commented typeid(value).name() since the name is mangled
std::cerr << name << /* " : " << typeid(value).name() << */ " := "
<< std::boolalpha << value << std::noboolalpha
<< std::endl; }
}
// LCOV_EXCL_STOP
}

View file

@ -8,11 +8,12 @@ Author: Leonardo de Moura
#include <exception>
#include <string>
#include <memory>
#include "lean/lean.h"
namespace lean {
class sstream;
/** \brief Base class for all Lean exceptions */
class throwable : public std::exception {
class LEAN_EXPORT throwable : public std::exception {
protected:
std::string m_msg;
throwable() {}
@ -26,7 +27,7 @@ public:
/** \brief Base class for all Lean "logical" exceptions, that is, exceptions not related
to resource constraints, and runtime errors */
class exception : public throwable {
class LEAN_EXPORT exception : public throwable {
protected:
exception() {}
public:
@ -36,14 +37,14 @@ public:
};
/** \brief Exception used to sign that a computation was interrupted */
class interrupted {
class LEAN_EXPORT interrupted {
public:
interrupted() {}
virtual ~interrupted() noexcept {}
virtual char const * what() const noexcept { return "interrupted"; }
};
class stack_space_exception : public throwable {
class LEAN_EXPORT stack_space_exception : public throwable {
std::string m_msg;
stack_space_exception(std::string const & msg):m_msg(msg) {}
public:
@ -51,7 +52,7 @@ public:
virtual char const * what() const noexcept { return m_msg.c_str(); }
};
class memory_exception : public throwable {
class LEAN_EXPORT memory_exception : public throwable {
std::string m_msg;
memory_exception(std::string const & msg):m_msg(msg) {}
public:
@ -59,7 +60,7 @@ public:
virtual char const * what() const noexcept { return m_msg.c_str(); }
};
class heartbeat_exception : public throwable {
class LEAN_EXPORT heartbeat_exception : public throwable {
public:
heartbeat_exception() {}
virtual char const * what() const noexcept;

View file

@ -12,6 +12,7 @@ Author: Leonardo de Moura
#include "runtime/stack_overflow.h"
#include "runtime/process.h"
#include "runtime/mutex.h"
#include "runtime/init_module.h"
namespace lean {
extern "C" LEAN_EXPORT void lean_initialize_runtime_module() {

View file

@ -5,8 +5,9 @@ Released under Apache 2.0 license as described in the file LICENSE.
Author: Leonardo de Moura
*/
#pragma once
#include <lean/lean.h>
namespace lean {
void initialize_runtime_module();
void finalize_runtime_module();
LEAN_EXPORT void initialize_runtime_module();
LEAN_EXPORT void finalize_runtime_module();
}

View file

@ -13,10 +13,10 @@ Author: Leonardo de Moura
namespace lean {
/** \brief Increment thread local counter for approximating elapsed time. */
void inc_heartbeat();
LEAN_EXPORT void inc_heartbeat();
/** \brief Reset thread local counter for approximating elapsed time. */
void reset_heartbeat();
LEAN_EXPORT void reset_heartbeat();
/* Update the current heartbeat */
class scope_heartbeat : flet<size_t> {
@ -30,9 +30,9 @@ public:
This is a thread local value. The class lthread uses the
maximum of the parent thread. */
void set_max_heartbeat(size_t max);
void set_max_heartbeat_thousands(unsigned max);
size_t get_max_heartbeat();
LEAN_EXPORT void set_max_heartbeat(size_t max);
LEAN_EXPORT void set_max_heartbeat_thousands(unsigned max);
LEAN_EXPORT size_t get_max_heartbeat();
/* Update the thread local max heartbeat */
class scope_max_heartbeat : flet<size_t> {
@ -40,12 +40,12 @@ public:
scope_max_heartbeat(size_t max);
};
void check_heartbeat();
LEAN_EXPORT void check_heartbeat();
/**
\brief Throw an interrupted exception if the current task is marked cancelled.
*/
void check_interrupted();
LEAN_EXPORT void check_interrupted();
/**
\brief Check system resources: stack, memory, and (if `do_check_interrupted` is true) heartbeat
@ -55,7 +55,7 @@ void check_interrupted();
would not bring down the entire process as interruption (via heartbeat limit or flag) should not
be a fatal error.
*/
void check_system(char const * component_name, bool do_check_interrupted = false);
LEAN_EXPORT void check_system(char const * component_name, bool do_check_interrupted = false);
constexpr unsigned g_small_sleep = 10;
@ -64,6 +64,6 @@ constexpr unsigned g_small_sleep = 10;
\remark check_interrupted is invoked every \c step_ms milliseconds;
*/
void sleep_for(unsigned ms, unsigned step_ms = g_small_sleep);
inline void sleep_for(chrono::milliseconds const & ms) { sleep_for(ms.count(), 10); }
LEAN_EXPORT void sleep_for(unsigned ms, unsigned step_ms = g_small_sleep);
LEAN_EXPORT inline void sleep_for(chrono::milliseconds const & ms) { sleep_for(ms.count(), 10); }
}

View file

@ -12,10 +12,10 @@ Author: Leonardo de Moura
namespace lean {
inline lean_obj_res io_result_mk_ok(lean_obj_arg a) { return lean_io_result_mk_ok(a); }
inline lean_obj_res io_result_mk_error(lean_obj_arg e) { return lean_io_result_mk_error(e); }
lean_obj_res io_result_mk_error(char const * msg);
lean_obj_res io_result_mk_error(std::string const & msg);
LEAN_EXPORT lean_obj_res io_result_mk_error(char const * msg);
LEAN_EXPORT lean_obj_res io_result_mk_error(std::string const & msg);
inline lean_obj_res decode_io_error(int errnum, b_lean_obj_arg fname) { return lean_decode_io_error(errnum, fname); }
lean_obj_res io_wrap_handle(FILE * hfile);
LEAN_EXPORT lean_obj_res io_wrap_handle(FILE * hfile);
void initialize_io();
void finalize_io();
}

View file

@ -8,5 +8,5 @@ Author: Mac Malone
#include <string>
namespace lean {
void load_dynlib(std::string path);
LEAN_EXPORT void load_dynlib(std::string path);
}

View file

@ -6,12 +6,13 @@ Author: Leonardo de Moura
*/
#pragma once
#include <cstdlib>
#include <lean/lean.h>
namespace lean {
/** \brief Set maximum amount of memory in bytes */
void set_max_memory(size_t max);
LEAN_EXPORT void set_max_memory(size_t max);
/** \brief Set maximum amount of memory in megabytes */
void set_max_memory_megabyte(unsigned max);
void check_memory(char const * component_name);
size_t get_allocated_memory();
LEAN_EXPORT void set_max_memory_megabyte(unsigned max);
LEAN_EXPORT void check_memory(char const * component_name);
LEAN_EXPORT size_t get_allocated_memory();
}

View file

@ -21,7 +21,7 @@ Author: Leonardo de Moura
namespace lean {
/** \brief Wrapper for GMP integers */
class mpz {
class LEAN_EXPORT mpz {
friend class object_compactor;
friend class compacted_region;
#ifdef LEAN_USE_GMP
@ -146,9 +146,9 @@ public:
mpz & operator=(unsigned int v);
mpz & operator=(int v);
friend int cmp(mpz const & a, mpz const & b);
friend int cmp(mpz const & a, unsigned b);
friend int cmp(mpz const & a, int b);
LEAN_EXPORT friend int cmp(mpz const & a, mpz const & b);
LEAN_EXPORT friend int cmp(mpz const & a, unsigned b);
LEAN_EXPORT friend int cmp(mpz const & a, int b);
friend bool operator<(mpz const & a, mpz const & b) { return cmp(a, b) < 0; }
friend bool operator<(mpz const & a, unsigned b) { return cmp(a, b) < 0; }
@ -284,7 +284,7 @@ public:
friend void gcd(mpz & g, mpz const & a, mpz const & b);
friend mpz gcd(mpz const & a, mpz const & b) { mpz r; gcd(r, a, b); return r; }
friend std::ostream & operator<<(std::ostream & out, mpz const & v);
LEAN_EXPORT friend std::ostream & operator<<(std::ostream & out, mpz const & v);
std::string to_string() const;
};

View file

@ -99,7 +99,6 @@ inline void cnstr_set_float(b_obj_arg o, unsigned offset, double v) { lean_ctor_
// =======================================
// Closures
void free_closure_obj(object * o);
inline void * closure_fun(object * o) { return lean_closure_fun(o); }
inline unsigned closure_arity(object * o) { return lean_closure_arity(o); }
inline unsigned closure_num_fixed(object * o) { return lean_closure_num_fixed(o); }
@ -178,7 +177,7 @@ inline object* apply_m(object* f, unsigned n, object** args) { return lean_apply
// =======================================
// MPZ
object * alloc_mpz(mpz const &);
LEAN_EXPORT object * alloc_mpz(mpz const &);
inline mpz_object * to_mpz(object * o) { lean_assert(is_mpz(o)); return (mpz_object*)o; }
// =======================================
@ -187,7 +186,7 @@ inline mpz_object * to_mpz(object * o) { lean_assert(is_mpz(o)); return (mpz_obj
inline size_t array_capacity(object * o) { return lean_array_capacity(o); }
inline object ** array_cptr(object * o) { return lean_array_cptr(o); }
inline obj_res alloc_array(size_t size, size_t capacity) { return lean_alloc_array(size, capacity); }
object * array_mk_empty();
LEAN_EXPORT object * array_mk_empty();
inline size_t array_size(b_obj_arg o) { return lean_array_size(o); }
inline void array_set_size(u_obj_arg o, size_t sz) { lean_array_set_size(o, sz); }
inline b_obj_res array_get(b_obj_arg o, size_t i) { return lean_array_get_core(o, i); }
@ -239,8 +238,8 @@ inline size_t string_capacity(object * o) { return lean_string_capacity(o); }
inline uint32 char_default_value() { return lean_char_default_value(); }
inline obj_res alloc_string(size_t size, size_t capacity, size_t len) { return lean_alloc_string(size, capacity, len); }
inline obj_res mk_string(char const * s) { return lean_mk_string(s); }
obj_res mk_string(std::string const & s);
std::string string_to_std(b_obj_arg o);
LEAN_EXPORT obj_res mk_string(std::string const & s);
LEAN_EXPORT std::string string_to_std(b_obj_arg o);
inline char const * string_cstr(b_obj_arg o) { return lean_string_cstr(o); }
inline size_t string_size(b_obj_arg o) { return lean_string_size(o); }
inline size_t string_len(b_obj_arg o) { return lean_string_len(o); }
@ -257,7 +256,7 @@ inline uint8 string_utf8_at_end(b_obj_arg s, b_obj_arg i) { return lean_string_u
inline obj_res string_utf8_extract(b_obj_arg s, b_obj_arg b, b_obj_arg e) { return lean_string_utf8_extract(s, b, e); }
inline obj_res string_utf8_byte_size(b_lean_obj_arg s) { return lean_string_utf8_byte_size(s); }
inline bool string_eq(b_obj_arg s1, b_obj_arg s2) { return lean_string_eq(s1, s2); }
bool string_eq(b_obj_arg s1, char const * s2);
LEAN_EXPORT bool string_eq(b_obj_arg s1, char const * s2);
inline bool string_ne(b_obj_arg s1, b_obj_arg s2) { return lean_string_ne(s1, s2); }
inline bool string_lt(b_obj_arg s1, b_obj_arg s2) { return lean_string_lt(s1, s2); }
inline uint8 string_dec_eq(b_obj_arg s1, b_obj_arg s2) { return string_eq(s1, s2); }
@ -275,7 +274,7 @@ inline obj_res thunk_get_own(b_obj_arg t) { return lean_thunk_get_own(t); }
// =======================================
// Tasks
class scoped_task_manager {
class LEAN_EXPORT scoped_task_manager {
public:
scoped_task_manager(unsigned num_workers);
~scoped_task_manager();
@ -309,7 +308,7 @@ inline obj_res mk_option_some(obj_arg v) { obj_res r = alloc_cnstr(1, 1, 0); cns
// Natural numbers
inline mpz const & mpz_value(b_obj_arg o) { return to_mpz(o)->m_value; }
object * mpz_to_nat_core(mpz const & m);
LEAN_EXPORT object * mpz_to_nat_core(mpz const & m);
inline object * mk_nat_obj_core(mpz const & m) { return mpz_to_nat_core(m); }
inline obj_res mk_nat_obj(mpz const & m) {
if (m.is_size_t() && m.get_size_t() <= LEAN_MAX_SMALL_NAT)
@ -341,7 +340,7 @@ inline obj_res nat_lxor(b_obj_arg a1, b_obj_arg a2) { return lean_nat_lxor(a1, a
// =======================================
// Integers
object * mk_int_obj_core(mpz const & m);
LEAN_EXPORT object * mk_int_obj_core(mpz const & m);
inline obj_res mk_int_obj(mpz const & m) {
if (m < LEAN_MIN_SMALL_INT || m > LEAN_MAX_SMALL_INT)
return mk_int_obj_core(m);
@ -463,7 +462,7 @@ inline b_obj_res io_result_get_value(b_obj_arg r) { return lean_io_result_get_va
inline b_obj_res io_result_get_error(b_obj_arg r) { return lean_io_result_get_error(r); }
inline void io_result_show_error(b_obj_arg r) { return lean_io_result_show_error(r); }
inline void io_mark_end_initialization() { return lean_io_mark_end_initialization(); }
void io_eprintln(obj_arg s);
LEAN_EXPORT void io_eprintln(obj_arg s);
// =======================================
// ST ref primitives

View file

@ -42,7 +42,7 @@ public:
};
/* Remark: this function doesn't increase the reference counter of objs */
object_ref mk_cnstr(unsigned tag, unsigned num_objs, object ** objs, unsigned scalar_sz = 0);
LEAN_EXPORT object_ref mk_cnstr(unsigned tag, unsigned num_objs, object ** objs, unsigned scalar_sz = 0);
inline object_ref mk_cnstr(unsigned tag, object * o, unsigned scalar_sz = 0) { return mk_cnstr(tag, 1, &o, scalar_sz); }
inline object_ref mk_cnstr(unsigned tag, object * o1, object * o2, unsigned scalar_sz = 0) {
object * os[2] = { o1, o2 };

View file

@ -8,6 +8,7 @@ Author: Leonardo de Moura
#include <iostream>
#include "runtime/thread.h"
#include "runtime/exception.h"
#include "runtime/stackinfo.h"
#if !defined(LEAN_USE_SPLIT_STACK)
#if defined(LEAN_WINDOWS)
@ -29,7 +30,7 @@ void throw_get_stack_size_failed() {
}
#if defined(LEAN_WINDOWS)
size_t get_stack_size(int main) {
size_t get_stack_size(bool main) {
if (main) {
return LEAN_WIN_STACK_SIZE;
} else {
@ -37,7 +38,7 @@ size_t get_stack_size(int main) {
}
}
#elif defined (__APPLE__)
size_t get_stack_size(int main) {
size_t get_stack_size(bool main) {
if (main) {
// Retrieve stack size of the main thread.
struct rlimit curr;
@ -50,7 +51,7 @@ size_t get_stack_size(int main) {
}
}
#elif defined(LEAN_EMSCRIPTEN)
size_t get_stack_size(int main) {
size_t get_stack_size(bool main) {
if (main) {
return emscripten_stack_get_end() - emscripten_stack_get_base();
} else {
@ -58,7 +59,7 @@ size_t get_stack_size(int main) {
}
}
#else
size_t get_stack_size(int main) {
size_t get_stack_size(bool main) {
if (main) {
// Retrieve stack size of the main thread.
struct rlimit curr;

View file

@ -6,6 +6,7 @@ Author: Leonardo de Moura
*/
#pragma once
#include <cstdlib>
#include <lean/lean.h>
namespace lean {
#if defined(LEAN_USE_SPLIT_STACK)
@ -16,16 +17,17 @@ inline void save_stack_info(bool = true) {}
inline size_t get_used_stack_size() { return 0; }
inline size_t get_available_stack_size() { return 8192*1024; }
#else
size_t get_stack_size(bool main);
void save_stack_info(bool main = true);
size_t get_used_stack_size();
size_t get_available_stack_size();
LEAN_EXPORT size_t get_stack_size(bool main);
LEAN_EXPORT void save_stack_info(bool main = true);
LEAN_EXPORT size_t get_used_stack_size();
LEAN_EXPORT size_t get_available_stack_size();
/**
\brief Throw an exception if the amount of available stack space is low.
\remark The optional argument \c component_name is used to inform the
user which module is the potential offender.
*/
void check_stack(char const * component_name);
LEAN_EXPORT void check_stack(char const * component_name);
#endif
}

View file

@ -8,6 +8,7 @@ Author: Leonardo de Moura
#include <iostream>
#include <chrono>
#include <functional>
#include <lean/lean.h>
#ifndef LEAN_STACK_BUFFER_SPACE
#define LEAN_STACK_BUFFER_SPACE 128*1024 // 128 Kb
@ -50,7 +51,7 @@ namespace this_thread = std::this_thread;
inline unsigned hardware_concurrency() { return std::thread::hardware_concurrency(); }
/** Simple thread class that allows us to set the thread stack size.
We implement it using pthreads on OSX/Linux and WinThreads on Windows. */
class lthread {
class LEAN_EXPORT lthread {
static size_t m_thread_stack_size;
struct imp;
std::unique_ptr<imp> m_imp;
@ -220,13 +221,13 @@ void initialize_thread();
void finalize_thread();
typedef void (*thread_finalizer)(void *); // NOLINT
void register_post_thread_finalizer(thread_finalizer fn, void * p);
void register_thread_finalizer(thread_finalizer fn, void * p);
void run_thread_finalizers();
void run_post_thread_finalizers();
void delete_thread_finalizer_manager();
LEAN_EXPORT void register_post_thread_finalizer(thread_finalizer fn, void * p);
LEAN_EXPORT void register_thread_finalizer(thread_finalizer fn, void * p);
LEAN_EXPORT void run_thread_finalizers();
LEAN_EXPORT void run_post_thread_finalizers();
LEAN_EXPORT void delete_thread_finalizer_manager();
bool in_thread_finalization();
LEAN_EXPORT bool in_thread_finalization();
/**
\brief Add \c fn to the list of functions used to reset thread local storage.
@ -237,7 +238,7 @@ bool in_thread_finalization();
contains cached data that may not be valid anymore.
\see reset_thread_local */
void register_thread_local_reset_fn(std::function<void()> fn);
LEAN_EXPORT void register_thread_local_reset_fn(std::function<void()> fn);
/**
\brief Reset thread local storage that contains cached
@ -245,5 +246,5 @@ void register_thread_local_reset_fn(std::function<void()> fn);
We invoke this function before processing a command
and before executing a task. */
void reset_thread_local();
LEAN_EXPORT void reset_thread_local();
}

View file

@ -8,24 +8,25 @@ Author: Leonardo de Moura
#include <vector>
#include <string>
#include "runtime/optional.h"
#include "lean/lean.h"
namespace lean {
using uchar = unsigned char;
bool is_utf8_next(unsigned char c);
unsigned get_utf8_size(unsigned char c);
LEAN_EXPORT bool is_utf8_next(unsigned char c);
LEAN_EXPORT unsigned get_utf8_size(unsigned char c);
/* Return the length of the null terminated string encoded using UTF8 */
size_t utf8_strlen(char const * str);
LEAN_EXPORT size_t utf8_strlen(char const * str);
/* Return the length of the string `str` encoded using UTF8.
`str` may contain null characters. */
size_t utf8_strlen(std::string const & str);
LEAN_EXPORT size_t utf8_strlen(std::string const & str);
/* Return the length of the string `str` encoded using UTF8.
`str` may contain null characters. */
size_t utf8_strlen(char const * str, size_t sz);
optional<size_t> utf8_char_pos(char const * str, size_t char_idx);
char const * get_utf8_last_char(char const * str);
std::string utf8_trim(std::string const & s);
unsigned utf8_to_unicode(uchar const * begin, uchar const * end);
LEAN_EXPORT size_t utf8_strlen(char const * str, size_t sz);
LEAN_EXPORT optional<size_t> utf8_char_pos(char const * str, size_t char_idx);
LEAN_EXPORT char const * get_utf8_last_char(char const * str);
LEAN_EXPORT std::string utf8_trim(std::string const & s);
LEAN_EXPORT unsigned utf8_to_unicode(uchar const * begin, uchar const * end);
inline unsigned utf8_to_unicode(char const * begin, char const * end) {
return utf8_to_unicode(reinterpret_cast<uchar const *>(begin),
reinterpret_cast<uchar const *>(end));
@ -34,20 +35,20 @@ inline unsigned utf8_to_unicode(char const * begin, char const * end) {
/* If `c` is the first byte of an utf-8 encoded unicode scalar value,
then return `some(n)` where `n` is the number of bytes needed to encode
the unicode scalar value. Otherwise, return `none` */
optional<unsigned> get_utf8_first_byte_opt(unsigned char c);
LEAN_EXPORT optional<unsigned> get_utf8_first_byte_opt(unsigned char c);
/* "Read" next unicode character starting at position i in a string using UTF-8 encoding.
Return the unicode character and update i. */
unsigned next_utf8(std::string const & str, size_t & i);
unsigned next_utf8(char const * str, size_t size, size_t & i);
LEAN_EXPORT unsigned next_utf8(std::string const & str, size_t & i);
LEAN_EXPORT unsigned next_utf8(char const * str, size_t size, size_t & i);
/* Decode a UTF-8 encoded string `str` into unicode scalar values */
void utf8_decode(std::string const & str, std::vector<unsigned> & out);
LEAN_EXPORT void utf8_decode(std::string const & str, std::vector<unsigned> & out);
/* Push a unicode scalar value into a utf-8 encoded string */
void push_unicode_scalar(std::string & s, unsigned code);
LEAN_EXPORT void push_unicode_scalar(std::string & s, unsigned code);
/* Store unicode scalar value at `d`, `d` must point to memory with enough space to store `c`.
Return the number of bytes consumed. */
unsigned push_unicode_scalar(char * d, unsigned code);
LEAN_EXPORT unsigned push_unicode_scalar(char * d, unsigned code);
}

View file

@ -33,8 +33,11 @@ endif
# These can be phony since the inner Makefile will have the correct dependencies and avoid rebuilds
Init:
@mkdir -p "${LIB}/lean/Lean" "${LIB}/lean/Lake"
# Use `+` to use the Make jobserver with `leanmake` for parallelized builds
+"${LEAN_BIN}/leanmake" lib PKG=Init $(LEANMAKE_OPTS) LEANC_OPTS+=-DLEAN_EXPORTING
# Build .oleans of downstream libraries as well for better parallelism
+"${LEAN_BIN}/leanmake" objs lib PKG=Init $(LEANMAKE_OPTS) LEANC_OPTS+=-DLEAN_EXPORTING \
EXTRA_SRC_ROOTS="Lean Lean.lean"
Lean: Init
+"${LEAN_BIN}/leanmake" lib PKG=Lean $(LEANMAKE_OPTS) LEANC_OPTS+=-DLEAN_EXPORTING
@ -42,11 +45,19 @@ Lean: Init
# the following targets are all invoked by separate `make` calls; see src/CMakeLists.txt
# we specify the precise file names here to avoid rebuilds
${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX}: ${LIB}/lean/libInit.a ${LIB}/lean/libLean.a ${LIB}/lean/libleancpp.a ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a
${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libInit_shared${CMAKE_SHARED_LIBRARY_SUFFIX}: ${LIB}/lean/libInit.a ${CMAKE_BINARY_DIR}/runtime/libleanrt_initial-exec.a
@echo "[ ] Building $@"
# on Windows, must remove file before writing a new one (since the old one may be in use)
@rm -f $@
"${CMAKE_BINARY_DIR}/leanc.sh" -shared -o $@ ${LEANSHARED_LINKER_FLAGS} ${LEANC_OPTS}
"${CMAKE_BINARY_DIR}/leanc.sh" -shared -o $@ ${INIT_SHARED_LINKER_FLAGS} ${TOOLCHAIN_SHARED_LINKER_FLAGS} ${LEANC_OPTS}
Init_shared: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libInit_shared${CMAKE_SHARED_LIBRARY_SUFFIX}
${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX}: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libInit_shared${CMAKE_SHARED_LIBRARY_SUFFIX} ${LIB}/lean/libLean.a ${LIB}/lean/libleancpp.a
@echo "[ ] Building $@"
# on Windows, must remove file before writing a new one (since the old one may be in use)
@rm -f $@
"${CMAKE_BINARY_DIR}/leanc.sh" -shared -o $@ ${LEANSHARED_LINKER_FLAGS} ${TOOLCHAIN_SHARED_LINKER_FLAGS} ${LEANC_OPTS}
leanshared: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX}
@ -54,7 +65,7 @@ Lake:
# lake is in its own subdirectory, so must adjust relative paths...
+"${LEAN_BIN}/leanmake" -C lake bin lib PKG=Lake BIN_NAME=lake${CMAKE_EXECUTABLE_SUFFIX} $(LEANMAKE_OPTS) LINK_OPTS='${CMAKE_EXE_LINKER_FLAGS_MAKE_MAKE}' OUT="../${LIB}" LIB_OUT="../${LIB}/lean" OLEAN_OUT="../${LIB}/lean"
${CMAKE_BINARY_DIR}/bin/lean${CMAKE_EXECUTABLE_SUFFIX}: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX} $(LEAN_SHELL)
${CMAKE_BINARY_DIR}/bin/lean${CMAKE_EXECUTABLE_SUFFIX}: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libInit_shared${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libleanshared${CMAKE_SHARED_LIBRARY_SUFFIX} $(LEAN_SHELL)
@echo "[ ] Building $@"
# on Windows, must remove file before writing a new one (since the old one may be in use)
@rm -f $@

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Init.Conv
// Imports: Init.NotationExtra
// Imports: Init.Meta
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -9400,13 +9400,13 @@ x_1 = l_Lean_Parser_Tactic_Conv_normCast___closed__5;
return x_1;
}
}
lean_object* initialize_Init_NotationExtra(uint8_t builtin, lean_object*);
lean_object* initialize_Init_Meta(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Init_Conv(uint8_t builtin, lean_object* w) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init_NotationExtra(builtin, lean_io_mk_world());
res = initialize_Init_Meta(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_Lean_Parser_Tactic_Conv_conv_quot___closed__1 = _init_l_Lean_Parser_Tactic_Conv_conv_quot___closed__1();

View file

@ -13,7 +13,6 @@
#ifdef __cplusplus
extern "C" {
#endif
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Array_tacticArray__mem__dec___closed__1;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__42;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1___closed__12;
@ -48,7 +47,6 @@ static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array
lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t);
lean_object* l_Lean_Syntax_node6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__44;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__34;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1___closed__18;
@ -83,13 +81,11 @@ lean_object* l_Lean_Syntax_node4(lean_object*, lean_object*, lean_object*, lean_
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__21;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__8;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__41;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter(lean_object*, lean_object*);
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1___closed__4;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__36;
static lean_object* l_Array_tacticArray__get__dec___closed__1;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__32;
static lean_object* l_Array_tacticArray__mem__dec___closed__4;
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__31;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__18;
lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*);
@ -102,7 +98,6 @@ static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1___closed__17;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__37;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__4;
lean_object* lean_nat_sub(lean_object*, lean_object*);
static lean_object* l_Array_tacticArray__mem__dec___closed__2;
LEAN_EXPORT lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__tacticDecreasing__trivial__1(lean_object*, lean_object*, lean_object*);
static lean_object* l_Array_tacticArray__get__dec___closed__2;
@ -119,52 +114,6 @@ LEAN_EXPORT lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__
lean_object* l_String_toSubstring_x27(lean_object*);
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__get__dec__1___closed__2;
static lean_object* l_Array___aux__Init__Data__Array__Mem______macroRules__Array__tacticArray__mem__dec__1___closed__21;
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg(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; uint8_t x_8;
x_5 = lean_ctor_get(x_1, 0);
lean_inc(x_5);
x_6 = lean_ctor_get(x_1, 1);
lean_inc(x_6);
lean_dec(x_1);
x_7 = lean_unsigned_to_nat(0u);
x_8 = lean_nat_dec_eq(x_2, x_7);
if (x_8 == 0)
{
lean_object* x_9; lean_object* x_10; lean_object* x_11;
lean_dec(x_3);
x_9 = lean_unsigned_to_nat(1u);
x_10 = lean_nat_sub(x_2, x_9);
x_11 = lean_apply_4(x_4, x_5, x_6, x_10, lean_box(0));
return x_11;
}
else
{
lean_object* x_12;
lean_dec(x_4);
x_12 = lean_apply_3(x_3, x_5, x_6, lean_box(0));
return x_12;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter(lean_object* x_1, lean_object* x_2) {
_start:
{
lean_object* x_3;
x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg___boxed), 4, 0);
return x_3;
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg___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___private_Init_Data_Array_Mem_0__List_get_match__1_splitter___rarg(x_1, x_2, x_3, x_4);
lean_dec(x_2);
return x_5;
}
}
LEAN_EXPORT lean_object* l_Array_instMembershipArray(lean_object* x_1) {
_start:
{

File diff suppressed because it is too large Load diff

View file

@ -13,59 +13,26 @@
#ifdef __cplusplus
extern "C" {
#endif
LEAN_EXPORT uint8_t l_Std_BitVec_carry(lean_object*, lean_object*, lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_Std_BitVec_carry___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_atLeastTwo___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_carry___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_BitVec_carry___rarg(lean_object*, lean_object*, lean_object*, uint8_t);
lean_object* l_Bool_toNat(uint8_t);
LEAN_EXPORT lean_object* l_Std_BitVec_adc___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_Std_BitVec_adc___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Std_BitVec_atLeastTwo(uint8_t, uint8_t, uint8_t);
LEAN_EXPORT lean_object* l_Std_BitVec_adcb___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_adc(lean_object*, lean_object*, lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_BitVec_carry___boxed(lean_object*);
LEAN_EXPORT lean_object* l_BitVec_adcb___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_adc___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_carry(lean_object*);
LEAN_EXPORT lean_object* l_Bool_atLeastTwo___boxed(lean_object*, lean_object*, lean_object*);
lean_object* l_BitVec_iunfoldr(lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Nat_testBit(lean_object*, lean_object*);
lean_object* lean_nat_pow(lean_object*, lean_object*);
lean_object* lean_nat_mod(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_adcb(uint8_t, uint8_t, uint8_t);
LEAN_EXPORT lean_object* l_Std_BitVec_adc___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_adc___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Bool_atLeastTwo(uint8_t, uint8_t, uint8_t);
LEAN_EXPORT lean_object* l_BitVec_adc___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_BitVec_adcb(uint8_t, uint8_t, uint8_t);
uint8_t lean_nat_dec_le(lean_object*, lean_object*);
lean_object* l_Std_BitVec_iunfoldr(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_adc(lean_object*, lean_object*, lean_object*, uint8_t);
lean_object* lean_nat_add(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Std_BitVec_carry(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t 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; uint8_t x_12;
x_5 = lean_unsigned_to_nat(2u);
x_6 = lean_nat_pow(x_5, x_1);
x_7 = lean_nat_mod(x_2, x_6);
x_8 = lean_nat_mod(x_3, x_6);
x_9 = lean_nat_add(x_7, x_8);
lean_dec(x_8);
lean_dec(x_7);
x_10 = l_Bool_toNat(x_4);
x_11 = lean_nat_add(x_9, x_10);
lean_dec(x_10);
lean_dec(x_9);
x_12 = lean_nat_dec_le(x_6, x_11);
lean_dec(x_11);
lean_dec(x_6);
return x_12;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_carry___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
uint8_t x_5; uint8_t x_6; lean_object* x_7;
x_5 = lean_unbox(x_4);
lean_dec(x_4);
x_6 = l_Std_BitVec_carry(x_1, x_2, x_3, x_5);
lean_dec(x_3);
lean_dec(x_2);
lean_dec(x_1);
x_7 = lean_box(x_6);
return x_7;
}
}
LEAN_EXPORT uint8_t l_Std_BitVec_atLeastTwo(uint8_t x_1, uint8_t x_2, uint8_t x_3) {
LEAN_EXPORT uint8_t l_Bool_atLeastTwo(uint8_t x_1, uint8_t x_2, uint8_t x_3) {
_start:
{
if (x_1 == 0)
@ -96,7 +63,7 @@ return x_5;
}
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_atLeastTwo___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
LEAN_EXPORT lean_object* l_Bool_atLeastTwo___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
uint8_t x_4; uint8_t x_5; uint8_t x_6; uint8_t x_7; lean_object* x_8;
@ -106,12 +73,64 @@ x_5 = lean_unbox(x_2);
lean_dec(x_2);
x_6 = lean_unbox(x_3);
lean_dec(x_3);
x_7 = l_Std_BitVec_atLeastTwo(x_4, x_5, x_6);
x_7 = l_Bool_atLeastTwo(x_4, x_5, x_6);
x_8 = lean_box(x_7);
return x_8;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adcb(uint8_t x_1, uint8_t x_2, uint8_t x_3) {
LEAN_EXPORT uint8_t l_BitVec_carry___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t 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; uint8_t x_12;
x_5 = lean_unsigned_to_nat(2u);
x_6 = lean_nat_pow(x_5, x_1);
x_7 = lean_nat_mod(x_2, x_6);
x_8 = lean_nat_mod(x_3, x_6);
x_9 = lean_nat_add(x_7, x_8);
lean_dec(x_8);
lean_dec(x_7);
x_10 = l_Bool_toNat(x_4);
x_11 = lean_nat_add(x_9, x_10);
lean_dec(x_10);
lean_dec(x_9);
x_12 = lean_nat_dec_le(x_6, x_11);
lean_dec(x_11);
lean_dec(x_6);
return x_12;
}
}
LEAN_EXPORT lean_object* l_BitVec_carry(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_BitVec_carry___rarg___boxed), 4, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_BitVec_carry___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
uint8_t x_5; uint8_t x_6; lean_object* x_7;
x_5 = lean_unbox(x_4);
lean_dec(x_4);
x_6 = l_BitVec_carry___rarg(x_1, x_2, x_3, x_5);
lean_dec(x_3);
lean_dec(x_2);
lean_dec(x_1);
x_7 = lean_box(x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_BitVec_carry___boxed(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = l_BitVec_carry(x_1);
lean_dec(x_1);
return x_2;
}
}
LEAN_EXPORT lean_object* l_BitVec_adcb(uint8_t x_1, uint8_t x_2, uint8_t x_3) {
_start:
{
uint8_t x_4; uint8_t x_22;
@ -265,7 +284,7 @@ return x_38;
}
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adcb___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
LEAN_EXPORT lean_object* l_BitVec_adcb___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
uint8_t x_4; uint8_t x_5; uint8_t x_6; lean_object* x_7;
@ -275,52 +294,52 @@ x_5 = lean_unbox(x_2);
lean_dec(x_2);
x_6 = lean_unbox(x_3);
lean_dec(x_3);
x_7 = l_Std_BitVec_adcb(x_4, x_5, x_6);
x_7 = l_BitVec_adcb(x_4, x_5, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adc___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4) {
LEAN_EXPORT lean_object* l_BitVec_adc___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4) {
_start:
{
uint8_t x_5; uint8_t x_6; lean_object* x_7;
x_5 = l_Nat_testBit(x_1, x_3);
x_6 = l_Nat_testBit(x_2, x_3);
x_7 = l_Std_BitVec_adcb(x_5, x_6, x_4);
x_7 = l_BitVec_adcb(x_5, x_6, x_4);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adc(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4) {
LEAN_EXPORT lean_object* l_BitVec_adc(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4) {
_start:
{
lean_object* x_5; lean_object* x_6; lean_object* x_7;
x_5 = lean_alloc_closure((void*)(l_Std_BitVec_adc___lambda__1___boxed), 4, 2);
x_5 = lean_alloc_closure((void*)(l_BitVec_adc___lambda__1___boxed), 4, 2);
lean_closure_set(x_5, 0, x_2);
lean_closure_set(x_5, 1, x_3);
x_6 = lean_box(x_4);
x_7 = l_Std_BitVec_iunfoldr(x_1, lean_box(0), x_5, x_6);
x_7 = l_BitVec_iunfoldr(x_1, lean_box(0), x_5, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adc___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
LEAN_EXPORT lean_object* l_BitVec_adc___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
uint8_t x_5; lean_object* x_6;
x_5 = lean_unbox(x_4);
lean_dec(x_4);
x_6 = l_Std_BitVec_adc___lambda__1(x_1, x_2, x_3, x_5);
x_6 = l_BitVec_adc___lambda__1(x_1, x_2, x_3, x_5);
lean_dec(x_3);
lean_dec(x_2);
lean_dec(x_1);
return x_6;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_adc___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
LEAN_EXPORT lean_object* l_BitVec_adc___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
uint8_t x_5; lean_object* x_6;
x_5 = lean_unbox(x_4);
lean_dec(x_4);
x_6 = l_Std_BitVec_adc(x_1, x_2, x_3, x_5);
x_6 = l_BitVec_adc(x_1, x_2, x_3, x_5);
lean_dec(x_1);
return x_6;
}

View file

@ -13,14 +13,14 @@
#ifdef __cplusplus
extern "C" {
#endif
LEAN_EXPORT lean_object* l_BitVec_iunfoldr___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Fin_hIterateFrom___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Std_BitVec_ofNat(lean_object*, lean_object*);
static lean_object* l_Std_BitVec_iunfoldr___closed__1;
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr___lambda__1(lean_object*, lean_object*, lean_object*);
lean_object* l_Std_BitVec_cons(lean_object*, uint8_t, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
lean_object* l_BitVec_ofNat(lean_object*, lean_object*);
static lean_object* l_BitVec_iunfoldr___closed__1;
LEAN_EXPORT lean_object* l_BitVec_iunfoldr(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_BitVec_cons(lean_object*, uint8_t, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_iunfoldr___lambda__1(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_BitVec_iunfoldr___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
lean_object* x_4; lean_object* x_5; uint8_t x_6;
@ -38,7 +38,7 @@ lean_inc(x_8);
lean_dec(x_3);
x_9 = lean_unbox(x_7);
lean_dec(x_7);
x_10 = l_Std_BitVec_cons(x_2, x_9, x_8);
x_10 = l_BitVec_cons(x_2, x_9, x_8);
lean_dec(x_8);
lean_dec(x_2);
lean_ctor_set(x_5, 1, x_10);
@ -57,7 +57,7 @@ lean_inc(x_13);
lean_dec(x_3);
x_14 = lean_unbox(x_12);
lean_dec(x_12);
x_15 = l_Std_BitVec_cons(x_2, x_14, x_13);
x_15 = l_BitVec_cons(x_2, x_14, x_13);
lean_dec(x_13);
lean_dec(x_2);
x_16 = lean_alloc_ctor(0, 2, 0);
@ -67,35 +67,35 @@ return x_16;
}
}
}
static lean_object* _init_l_Std_BitVec_iunfoldr___closed__1() {
static lean_object* _init_l_BitVec_iunfoldr___closed__1() {
_start:
{
lean_object* x_1; lean_object* x_2;
x_1 = lean_unsigned_to_nat(0u);
x_2 = l_Std_BitVec_ofNat(x_1, x_1);
x_2 = l_BitVec_ofNat(x_1, x_1);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
LEAN_EXPORT lean_object* l_BitVec_iunfoldr(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;
x_5 = l_Std_BitVec_iunfoldr___closed__1;
x_5 = l_BitVec_iunfoldr___closed__1;
x_6 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_6, 0, x_4);
lean_ctor_set(x_6, 1, x_5);
x_7 = lean_alloc_closure((void*)(l_Std_BitVec_iunfoldr___lambda__1), 3, 1);
x_7 = lean_alloc_closure((void*)(l_BitVec_iunfoldr___lambda__1), 3, 1);
lean_closure_set(x_7, 0, x_3);
x_8 = lean_unsigned_to_nat(0u);
x_9 = l_Fin_hIterateFrom___rarg(x_1, x_7, x_8, lean_box(0), x_6);
return x_9;
}
}
LEAN_EXPORT lean_object* l_Std_BitVec_iunfoldr___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
LEAN_EXPORT lean_object* l_BitVec_iunfoldr___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_Std_BitVec_iunfoldr(x_1, x_2, x_3, x_4);
x_5 = l_BitVec_iunfoldr(x_1, x_2, x_3, x_4);
lean_dec(x_1);
return x_5;
}
@ -117,8 +117,8 @@ lean_dec_ref(res);
res = initialize_Init_Data_Fin_Iterate(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_Std_BitVec_iunfoldr___closed__1 = _init_l_Std_BitVec_iunfoldr___closed__1();
lean_mark_persistent(l_Std_BitVec_iunfoldr___closed__1);
l_BitVec_iunfoldr___closed__1 = _init_l_BitVec_iunfoldr___closed__1();
lean_mark_persistent(l_BitVec_iunfoldr___closed__1);
return lean_io_result_mk_ok(lean_box(0));
}
#ifdef __cplusplus

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Init.Data.String.Extra
// Imports: Init.Control.Except Init.Data.ByteArray Init.SimpLemmas Init.Util Init.WFTactics
// Imports: Init.Data.ByteArray
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -116,7 +116,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_String_toNat_x21___closed__1;
x_2 = l_String_toNat_x21___closed__2;
x_3 = lean_unsigned_to_nat(22u);
x_3 = lean_unsigned_to_nat(18u);
x_4 = lean_unsigned_to_nat(4u);
x_5 = l_String_toNat_x21___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -670,31 +670,15 @@ x_2 = lean_alloc_closure((void*)(l_String_Iterator_foldUntil___rarg), 3, 0);
return x_2;
}
}
lean_object* initialize_Init_Control_Except(uint8_t builtin, lean_object*);
lean_object* initialize_Init_Data_ByteArray(uint8_t builtin, lean_object*);
lean_object* initialize_Init_SimpLemmas(uint8_t builtin, lean_object*);
lean_object* initialize_Init_Util(uint8_t builtin, lean_object*);
lean_object* initialize_Init_WFTactics(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Init_Data_String_Extra(uint8_t builtin, lean_object* w) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init_Control_Except(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_Data_ByteArray(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_SimpLemmas(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_Util(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_WFTactics(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_String_toNat_x21___closed__1 = _init_l_String_toNat_x21___closed__1();
lean_mark_persistent(l_String_toNat_x21___closed__1);
l_String_toNat_x21___closed__2 = _init_l_String_toNat_x21___closed__2();

File diff suppressed because it is too large Load diff

View file

@ -93,6 +93,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Attr_simp;
static lean_object* l_Lean_Parser_Tactic_paren___closed__10;
static lean_object* l_Lean_Parser_Tactic_tacticSimpa_x3f_____closed__2;
static lean_object* l_Lean_Parser_Tactic_tacticStop_____closed__3;
static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__4;
static lean_object* l_term_____x5b___x5d___closed__2;
static lean_object* l_Lean_Parser_Tactic_rotateLeft___closed__10;
static lean_object* l_Lean_Parser_Tactic_tacticHaveI_____closed__1;
@ -108,6 +109,7 @@ static lean_object* l_Lean_Parser_Tactic_failIfSuccess___closed__6;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Parser_Tactic_simpAll___closed__11;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticAssumption__mod__cast__1(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__5;
static lean_object* l_Lean_Parser_Tactic_dbgTrace___closed__4;
static lean_object* l_Lean_Parser_Tactic_simpStar___closed__3;
static lean_object* l_Lean_Parser_Tactic_tacticExists___x2c_x2c___closed__1;
@ -162,6 +164,7 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__19;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpArg;
static lean_object* l_Lean_Parser_Tactic_tacticNext___x3d_x3e_____closed__3;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__2;
static lean_object* l_Lean_Parser_Tactic_intro___closed__12;
static lean_object* l_Lean_Parser_Tactic_revert___closed__4;
static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__2___closed__14;
@ -205,6 +208,7 @@ static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__7;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_anyGoals;
static lean_object* l_Lean_Parser_Tactic_dsimpArgs___closed__5;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticSorry__1(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__6;
static lean_object* l_Lean_Parser_Tactic_generalizeArg___closed__8;
static lean_object* l_Lean_Parser_Tactic_tacticHave_____closed__5;
static lean_object* l_Lean_Parser_Tactic_save___closed__1;
@ -233,6 +237,8 @@ static lean_object* l_Lean_Parser_Tactic_normCast0___closed__1;
static lean_object* l_Lean_Parser_Tactic_tacticRwa_______closed__1;
static lean_object* l_Lean_Parser_Tactic_tacIfThenElse___closed__7;
static lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__1;
static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__3;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__4;
static lean_object* l_Lean_Parser_Tactic_inductionAlt___closed__6;
static lean_object* l_Lean_Parser_Tactic_tacticNomatch___x2c_x2c___closed__1;
static lean_object* l_Lean_Parser_Tactic_simpErase___closed__2;
@ -267,8 +273,10 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_intros___closed__4;
static lean_object* l_Lean_Parser_Tactic_tacticRfl___closed__1;
static lean_object* l_Lean_Parser_Tactic_applyAssumption___closed__4;
static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__2;
static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__2___closed__9;
static lean_object* l_Lean_Parser_Tactic_discharger___closed__12;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__1;
static lean_object* l_Lean_Parser_Tactic_simpAllTrace___closed__4;
static lean_object* l_Lean_Parser_Tactic_tacticNorm__cast_____closed__3;
static lean_object* l_Lean_Parser_Tactic_eqRefl___closed__4;
@ -334,6 +342,7 @@ static lean_object* l_Lean_Parser_Tactic_intros___closed__16;
static lean_object* l_Lean_Parser_Tactic_tacticRepeat_____closed__2;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticSorry__1___closed__6;
static lean_object* l_Lean_Parser_Tactic_simpa___closed__1;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__6;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_case;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__3;
LEAN_EXPORT lean_object* l_tacticGet__elem__tactic;
@ -458,6 +467,7 @@ static lean_object* l_Lean_Parser_Tactic_case___closed__8;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTry____1___closed__3;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_discharger;
static lean_object* l_Lean_Parser_Tactic_rewriteSeq___closed__9;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__9;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticBv__omega__1___closed__1;
static lean_object* l_Lean_Parser_Tactic_tacticLet_____closed__6;
static lean_object* l_Lean_Parser_Tactic_tacticSimpa_x3f_x21_____closed__1;
@ -510,6 +520,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_sleep;
static lean_object* l_Lean_Parser_Tactic_tacticAssumption__mod__cast___closed__3;
static lean_object* l_Lean_Parser_Tactic_first___closed__11;
static lean_object* l_Lean_Parser_Tactic_case___closed__13;
static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__1;
static lean_object* l_Lean_Parser_Tactic_traceMessage___closed__6;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_dsimpTraceArgsRest;
static lean_object* l_Lean_Parser_Tactic_tacticHave_____closed__4;
@ -517,6 +528,7 @@ static lean_object* l_Lean_Parser_Tactic_simpLemma___closed__4;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpTraceArgsRest;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticShow____1(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_apply;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_exact_x3f;
static lean_object* l_Lean_Parser_Tactic_simp___closed__19;
static lean_object* l_Lean_Parser_Tactic_tacticNofun___closed__2;
static lean_object* l_Lean_Parser_Tactic_focus___closed__3;
@ -558,6 +570,7 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_tacticRepeat_____closed__3;
static lean_object* l_Lean_Parser_Tactic_traceMessage___closed__9;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__6___closed__6;
static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__5;
static lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__8;
static lean_object* l_Lean_Parser_Tactic_letrec___closed__6;
static lean_object* l_Lean_Parser_Tactic_simpLemma___closed__2;
@ -739,6 +752,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_changeWith;
static lean_object* l_Lean_Parser_Tactic_tactic___x3c_x3b_x3e_____closed__3;
static lean_object* l_Lean_Parser_Tactic_clear___closed__3;
static lean_object* l_Lean_Parser_Attr_norm__cast___closed__3;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__9;
static lean_object* l_Lean_Parser_Attr_norm__cast___closed__1;
static lean_object* l_Lean_Parser_Tactic_refine___closed__6;
static lean_object* l_Lean_Parser_Tactic_intro___closed__17;
@ -836,6 +850,7 @@ static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__21;
static lean_object* l_Lean_Parser_Tactic_tacticInfer__instance___closed__5;
LEAN_EXPORT lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__1(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Parser_Tactic_tacticExists___x2c_x2c___closed__2;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__2;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_substVars;
static lean_object* l_Lean_Parser_Tactic_config___closed__4;
static lean_object* l_Lean_Parser_Tactic_simpaArgsRest___closed__11;
@ -887,6 +902,7 @@ static lean_object* l_Lean_Parser_Tactic_traceMessage___closed__1;
static lean_object* l_Lean_Parser_Tactic_withReducible___closed__5;
static lean_object* l_Lean_Parser_Tactic_tacticSimpa_x3f_____closed__1;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_dbgTrace;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__7;
static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__25;
static lean_object* l_Lean_Parser_Tactic_tacticSuffices_____closed__2;
static lean_object* l_Lean_Parser_Tactic_simpStar___closed__1;
@ -976,6 +992,7 @@ static lean_object* l_Lean_Parser_Tactic_tacticSimp_x3f_x21_____closed__5;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpPre;
static lean_object* l_Lean_Parser_Tactic_first___closed__21;
static lean_object* l_Lean_Parser_Tactic_unfold___closed__6;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__1;
static lean_object* l_Lean_Parser_Tactic_normCastAddElim___closed__1;
static lean_object* l_Lean_Parser_Tactic_rotateRight___closed__4;
static lean_object* l_Lean_Parser_Tactic_traceState___closed__5;
@ -994,6 +1011,7 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_simpArgs___closed__2;
static lean_object* l_Lean_Parser_Tactic_simpTrace___closed__8;
static lean_object* l_Lean_Parser_Tactic_tacticDsimp_x3f_x21_____closed__1;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__4;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_generalize;
static lean_object* l_Lean_Parser_Tactic_simp___closed__7;
static lean_object* l_Lean_Parser_Tactic_inductionAltLHS___closed__2;
@ -1054,8 +1072,10 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_simp___closed__6;
static lean_object* l_Lean_Parser_Tactic_case_x27___closed__4;
static lean_object* l_Lean_Parser_Tactic_tacticExfalso___closed__5;
LEAN_EXPORT lean_object* l_Lean_Parser_Syntax_exact_x3f;
static lean_object* l_Lean_Parser_Tactic_tacticRwa_______closed__5;
static lean_object* l_Lean_Parser_Tactic_change___closed__4;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__8;
static lean_object* l_Lean_Parser_Tactic_exact___closed__4;
static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__8;
static lean_object* l_Lean_Parser_Tactic_focus___closed__2;
@ -1159,11 +1179,13 @@ static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tac
static lean_object* l_Lean_Parser_Tactic_tacticSimpa_x21_____closed__2;
static lean_object* l_Lean_Parser_Tactic_tacticStop_____closed__5;
static lean_object* l_Lean_Parser_Tactic_normCast0___closed__5;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__3;
static lean_object* l_Lean_Parser_Tactic_traceState___closed__1;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRwa______1___closed__1;
static lean_object* l_Lean_Parser_Tactic_tacticLet_____closed__3;
static lean_object* l_Lean_Parser_Tactic_cases___closed__6;
static lean_object* l_Lean_Parser_Tactic_tacticNofun___closed__4;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__3;
static lean_object* l_Lean_Parser_Tactic_tacticHaveI_____closed__4;
static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__21;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_injections;
@ -1273,6 +1295,7 @@ static lean_object* l_Lean_Parser_Tactic_unfold___closed__3;
static lean_object* l_Lean_Parser_Tactic_fail___closed__1;
static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__2___closed__15;
static lean_object* l_term_____x5b___x5d_x27_____closed__4;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__8;
static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__4___closed__2;
static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__2___closed__8;
static lean_object* l_Lean_Parser_Tactic_allGoals___closed__2;
@ -1320,6 +1343,7 @@ extern lean_object* l_Lean_Parser_Tactic_caseArg;
LEAN_EXPORT lean_object* l_term_____x5b___x5d_x27__;
static lean_object* l_Lean_Parser_Tactic_casesTarget___closed__4;
static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__2___closed__5;
static lean_object* l_Lean_Parser_Tactic_exact_x3f___closed__5;
static lean_object* l_Lean_Parser_Tactic_split___closed__6;
static lean_object* l_Lean_Parser_Tactic_rotateLeft___closed__6;
static lean_object* l_Lean_Parser_Tactic_dbgTrace___closed__5;
@ -1467,8 +1491,10 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L
static lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__2;
static lean_object* l_Lean_Parser_Tactic_subst___closed__2;
static lean_object* l_Lean_Parser_Tactic_unfold___closed__1;
LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_apply_x3f;
static lean_object* l_Lean_Parser_Tactic_tacticNext___x3d_x3e_____closed__7;
static lean_object* l___aux__Init__Tactics______macroRules__term_____x5b___x5d__1___closed__5;
static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__7;
static lean_object* l_Lean_Parser_Tactic_tacticAssumption__mod__cast___closed__5;
static lean_object* l_Lean_Parser_Tactic_SolveByElim_arg___closed__5;
static lean_object* l_Lean_Parser_Tactic_delta___closed__5;
@ -21254,6 +21280,254 @@ x_1 = l_Lean_Parser_Tactic_applyRules___closed__9;
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__1() {
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("exact\?", 6);
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___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_Tactic_withAnnotateState___closed__1;
x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2;
x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3;
x_4 = l_Lean_Parser_Tactic_exact_x3f___closed__1;
x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4);
return x_5;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__3() {
_start:
{
lean_object* x_1; uint8_t x_2; lean_object* x_3;
x_1 = l_Lean_Parser_Tactic_exact_x3f___closed__1;
x_2 = 0;
x_3 = lean_alloc_ctor(6, 1, 1);
lean_ctor_set(x_3, 0, x_1);
lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_intro___closed__14;
x_3 = l_Lean_Parser_Tactic_intros___closed__8;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5;
x_1 = l_Lean_Parser_Tactic_exact_x3f___closed__4;
x_2 = l_Lean_Parser_Tactic_rwRuleSeq___closed__7;
x_3 = l_Lean_Parser_Tactic_rwRuleSeq___closed__6;
x_4 = 0;
x_5 = lean_alloc_ctor(11, 3, 1);
lean_ctor_set(x_5, 0, x_1);
lean_ctor_set(x_5, 1, x_2);
lean_ctor_set(x_5, 2, x_3);
lean_ctor_set_uint8(x_5, sizeof(void*)*3, x_4);
return x_5;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_simpaArgsRest___closed__9;
x_3 = l_Lean_Parser_Tactic_exact_x3f___closed__5;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__7() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_Parser_Tactic_rotateLeft___closed__6;
x_2 = l_Lean_Parser_Tactic_exact_x3f___closed__6;
x_3 = lean_alloc_ctor(1, 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_Tactic_exact_x3f___closed__8() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_exact_x3f___closed__3;
x_3 = l_Lean_Parser_Tactic_exact_x3f___closed__7;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f___closed__9() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_exact_x3f___closed__2;
x_2 = lean_unsigned_to_nat(1022u);
x_3 = l_Lean_Parser_Tactic_exact_x3f___closed__8;
x_4 = lean_alloc_ctor(3, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_exact_x3f() {
_start:
{
lean_object* x_1;
x_1 = l_Lean_Parser_Tactic_exact_x3f___closed__9;
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__1() {
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("apply\?", 6);
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___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_Tactic_withAnnotateState___closed__1;
x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2;
x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3;
x_4 = l_Lean_Parser_Tactic_apply_x3f___closed__1;
x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4);
return x_5;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__3() {
_start:
{
lean_object* x_1; uint8_t x_2; lean_object* x_3;
x_1 = l_Lean_Parser_Tactic_apply_x3f___closed__1;
x_2 = 0;
x_3 = lean_alloc_ctor(6, 1, 1);
lean_ctor_set(x_3, 0, x_1);
lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_intro___closed__14;
x_3 = l_Lean_Parser_Tactic_rename___closed__5;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5;
x_1 = l_Lean_Parser_Tactic_apply_x3f___closed__4;
x_2 = l_Lean_Parser_Tactic_rwRuleSeq___closed__7;
x_3 = l_Lean_Parser_Tactic_rwRuleSeq___closed__6;
x_4 = 0;
x_5 = lean_alloc_ctor(11, 3, 1);
lean_ctor_set(x_5, 0, x_1);
lean_ctor_set(x_5, 1, x_2);
lean_ctor_set(x_5, 2, x_3);
lean_ctor_set_uint8(x_5, sizeof(void*)*3, x_4);
return x_5;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_simpaArgsRest___closed__9;
x_3 = l_Lean_Parser_Tactic_apply_x3f___closed__5;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__7() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_Parser_Tactic_rotateLeft___closed__6;
x_2 = l_Lean_Parser_Tactic_apply_x3f___closed__6;
x_3 = lean_alloc_ctor(1, 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_Tactic_apply_x3f___closed__8() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7;
x_2 = l_Lean_Parser_Tactic_apply_x3f___closed__3;
x_3 = l_Lean_Parser_Tactic_apply_x3f___closed__7;
x_4 = lean_alloc_ctor(2, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f___closed__9() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Tactic_apply_x3f___closed__2;
x_2 = lean_unsigned_to_nat(1022u);
x_3 = l_Lean_Parser_Tactic_apply_x3f___closed__8;
x_4 = lean_alloc_ctor(3, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Tactic_apply_x3f() {
_start:
{
lean_object* x_1;
x_1 = l_Lean_Parser_Tactic_apply_x3f___closed__9;
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Attr_simp___closed__1() {
_start:
{
@ -22915,6 +23189,66 @@ return x_28;
}
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f___closed__1() {
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Syntax", 6);
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f___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_Tactic_withAnnotateState___closed__1;
x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2;
x_3 = l_Lean_Parser_Syntax_exact_x3f___closed__1;
x_4 = l_Lean_Parser_Tactic_exact_x3f___closed__1;
x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4);
return x_5;
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f___closed__3() {
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("exact\?%", 7);
return x_1;
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f___closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2;
x_1 = l_Lean_Parser_Syntax_exact_x3f___closed__3;
x_2 = lean_alloc_ctor(5, 1, 0);
lean_ctor_set(x_2, 0, x_1);
return x_2;
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f___closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = l_Lean_Parser_Syntax_exact_x3f___closed__2;
x_2 = lean_unsigned_to_nat(1024u);
x_3 = l_Lean_Parser_Syntax_exact_x3f___closed__4;
x_4 = lean_alloc_ctor(3, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Parser_Syntax_exact_x3f() {
_start:
{
lean_object* x_1;
x_1 = l_Lean_Parser_Syntax_exact_x3f___closed__5;
return x_1;
}
}
lean_object* initialize_Init_Notation(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Init_Tactics(uint8_t builtin, lean_object* w) {
@ -25812,6 +26146,46 @@ l_Lean_Parser_Tactic_applyRules___closed__9 = _init_l_Lean_Parser_Tactic_applyRu
lean_mark_persistent(l_Lean_Parser_Tactic_applyRules___closed__9);
l_Lean_Parser_Tactic_applyRules = _init_l_Lean_Parser_Tactic_applyRules();
lean_mark_persistent(l_Lean_Parser_Tactic_applyRules);
l_Lean_Parser_Tactic_exact_x3f___closed__1 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__1();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__1);
l_Lean_Parser_Tactic_exact_x3f___closed__2 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__2();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__2);
l_Lean_Parser_Tactic_exact_x3f___closed__3 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__3();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__3);
l_Lean_Parser_Tactic_exact_x3f___closed__4 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__4();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__4);
l_Lean_Parser_Tactic_exact_x3f___closed__5 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__5();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__5);
l_Lean_Parser_Tactic_exact_x3f___closed__6 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__6();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__6);
l_Lean_Parser_Tactic_exact_x3f___closed__7 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__7();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__7);
l_Lean_Parser_Tactic_exact_x3f___closed__8 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__8();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__8);
l_Lean_Parser_Tactic_exact_x3f___closed__9 = _init_l_Lean_Parser_Tactic_exact_x3f___closed__9();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f___closed__9);
l_Lean_Parser_Tactic_exact_x3f = _init_l_Lean_Parser_Tactic_exact_x3f();
lean_mark_persistent(l_Lean_Parser_Tactic_exact_x3f);
l_Lean_Parser_Tactic_apply_x3f___closed__1 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__1();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__1);
l_Lean_Parser_Tactic_apply_x3f___closed__2 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__2();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__2);
l_Lean_Parser_Tactic_apply_x3f___closed__3 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__3();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__3);
l_Lean_Parser_Tactic_apply_x3f___closed__4 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__4();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__4);
l_Lean_Parser_Tactic_apply_x3f___closed__5 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__5();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__5);
l_Lean_Parser_Tactic_apply_x3f___closed__6 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__6();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__6);
l_Lean_Parser_Tactic_apply_x3f___closed__7 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__7();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__7);
l_Lean_Parser_Tactic_apply_x3f___closed__8 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__8();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__8);
l_Lean_Parser_Tactic_apply_x3f___closed__9 = _init_l_Lean_Parser_Tactic_apply_x3f___closed__9();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f___closed__9);
l_Lean_Parser_Tactic_apply_x3f = _init_l_Lean_Parser_Tactic_apply_x3f();
lean_mark_persistent(l_Lean_Parser_Tactic_apply_x3f);
l_Lean_Parser_Attr_simp___closed__1 = _init_l_Lean_Parser_Attr_simp___closed__1();
lean_mark_persistent(l_Lean_Parser_Attr_simp___closed__1);
l_Lean_Parser_Attr_simp___closed__2 = _init_l_Lean_Parser_Attr_simp___closed__2();
@ -26028,6 +26402,18 @@ l_term_____x5b___x5d_x27_____closed__7 = _init_l_term_____x5b___x5d_x27_____clos
lean_mark_persistent(l_term_____x5b___x5d_x27_____closed__7);
l_term_____x5b___x5d_x27__ = _init_l_term_____x5b___x5d_x27__();
lean_mark_persistent(l_term_____x5b___x5d_x27__);
l_Lean_Parser_Syntax_exact_x3f___closed__1 = _init_l_Lean_Parser_Syntax_exact_x3f___closed__1();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f___closed__1);
l_Lean_Parser_Syntax_exact_x3f___closed__2 = _init_l_Lean_Parser_Syntax_exact_x3f___closed__2();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f___closed__2);
l_Lean_Parser_Syntax_exact_x3f___closed__3 = _init_l_Lean_Parser_Syntax_exact_x3f___closed__3();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f___closed__3);
l_Lean_Parser_Syntax_exact_x3f___closed__4 = _init_l_Lean_Parser_Syntax_exact_x3f___closed__4();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f___closed__4);
l_Lean_Parser_Syntax_exact_x3f___closed__5 = _init_l_Lean_Parser_Syntax_exact_x3f___closed__5();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f___closed__5);
l_Lean_Parser_Syntax_exact_x3f = _init_l_Lean_Parser_Syntax_exact_x3f();
lean_mark_persistent(l_Lean_Parser_Syntax_exact_x3f);
return lean_io_result_mk_ok(lean_box(0));
}
#ifdef __cplusplus

View file

@ -2712,7 +2712,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_mkOutParamArgsImplicit_go___closed__1;
x_2 = l_Lean_mkOutParamArgsImplicit_go___closed__2;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_mkOutParamArgsImplicit_go___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -2733,7 +2733,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_mkOutParamArgsImplicit_go___closed__1;
x_2 = l_Lean_mkOutParamArgsImplicit_go___closed__5;
x_3 = lean_unsigned_to_nat(1697u);
x_3 = lean_unsigned_to_nat(1716u);
x_4 = lean_unsigned_to_nat(23u);
x_5 = l_Lean_mkOutParamArgsImplicit_go___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -438,7 +438,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_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__1;
x_2 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__2;
x_3 = lean_unsigned_to_nat(1644u);
x_3 = lean_unsigned_to_nat(1663u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -517,7 +517,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_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__1;
x_2 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__2___closed__1;
x_3 = lean_unsigned_to_nat(1633u);
x_3 = lean_unsigned_to_nat(1652u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__2___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -633,7 +633,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_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__1;
x_2 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__4___closed__1;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__4___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -771,7 +771,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_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__1___closed__1;
x_2 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__6___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_Compiler_LCNF_Expr_mapFVarM___rarg___lambda__6___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -24,7 +24,6 @@ static lean_object* l_Lean_Lsp_instInhabitedDiagnosticCode___closed__1;
LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____spec__7(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_659____closed__7;
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1730____spec__1___boxed(lean_object*, lean_object*);
static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____spec__1___closed__9;
LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____spec__3(lean_object*, lean_object*);
@ -74,7 +73,6 @@ LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnosti
LEAN_EXPORT lean_object* l_Lean_Lsp_instFromJsonDiagnosticTag___boxed(lean_object*);
lean_object* l_Lean_Json_getObjValAs_x3f___at_Lean_JsonRpc_instFromJsonMessage___spec__3(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_instInhabitedPublishDiagnosticsParams;
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(lean_object*, lean_object*);
lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonLocationLink____x40_Lean_Data_Lsp_Basic___hyg_1335____spec__1(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__22;
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__11;
@ -95,6 +93,7 @@ lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJs
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_659____closed__12;
lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonLocation____x40_Lean_Data_Lsp_Basic___hyg_1132____spec__1(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_659____closed__14;
LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Lsp_instToJsonDiagnosticSeverity___closed__5;
static lean_object* l_Lean_Lsp_instFromJsonDiagnosticCode___closed__1;
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__15;
@ -165,6 +164,7 @@ lean_object* l_Lean_Json_getObjValD(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticSeverity_toCtorIdx___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_instBEqDiagnosticTag;
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonDiagnosticWith(lean_object*);
static lean_object* l_Lean_Lsp_instInhabitedPublishDiagnosticsParams___closed__1;
static lean_object* l_Lean_Lsp_instToJsonPublishDiagnosticsParams___closed__1;
@ -173,7 +173,6 @@ static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPu
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1783____closed__1;
LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticSeverity_noConfusion___rarg___lambda__1___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1088____spec__4___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1___boxed(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1783____closed__8;
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticSeverity____x40_Lean_Data_Lsp_Diagnostics___hyg_18_(uint8_t, uint8_t);
LEAN_EXPORT lean_object* l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____spec__6___boxed(lean_object*, lean_object*);
@ -192,7 +191,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJ
static lean_object* l_Lean_Lsp_instInhabitedDiagnosticRelatedInformation___closed__5;
static lean_object* l_Lean_Lsp_instBEqDiagnosticSeverity___closed__1;
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__25;
LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonDiagnosticWith___rarg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_instBEqPublishDiagnosticsParams;
lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_fromJsonLocation____x40_Lean_Data_Lsp_Basic___hyg_1132____spec__2(lean_object*, lean_object*);
@ -207,7 +205,6 @@ LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublish
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__34;
static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____spec__1___closed__3;
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticCode____x40_Lean_Data_Lsp_Diagnostics___hyg_197_(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____spec__8(lean_object*, lean_object*);
uint8_t l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_beqLocation____x40_Lean_Data_Lsp_Basic___hyg_1009_(lean_object*, lean_object*);
static lean_object* l_Lean_Lsp_instToJsonDiagnosticSeverity___closed__4;
@ -229,7 +226,6 @@ static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPu
LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticWith_tags_x3f___default;
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__17;
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1783____closed__12;
LEAN_EXPORT uint8_t l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Lsp_instInhabitedDiagnosticRelatedInformation___closed__3;
static lean_object* l_Lean_Lsp_instFromJsonDiagnosticSeverity___closed__5;
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1783____spec__3___boxed(lean_object*);
@ -265,6 +261,7 @@ static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonPu
LEAN_EXPORT uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____spec__4(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1730_(lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__30;
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(lean_object*, lean_object*);
static lean_object* l_Lean_Lsp_instInhabitedDiagnosticRelatedInformation___closed__1;
static lean_object* l_Lean_Lsp_instFromJsonDiagnosticSeverity___closed__6;
LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticSeverity_toCtorIdx(uint8_t);
@ -306,6 +303,7 @@ static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDi
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1088_(lean_object*);
uint8_t lean_usize_dec_lt(size_t, size_t);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__16;
uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Init_Omega_Constraint_0__Lean_Omega_beqConstraint____x40_Init_Omega_Constraint___hyg_65____spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticTag_noConfusion(lean_object*);
lean_object* lean_nat_add(lean_object*, lean_object*);
static lean_object* l_Lean_Lsp_instFromJsonPublishDiagnosticsParams___closed__1;
@ -317,6 +315,7 @@ lean_object* l_Lean_Json_pretty(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__43;
static lean_object* l_Lean_Lsp_instToJsonDiagnosticSeverity___closed__6;
LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_uset(lean_object*, size_t, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_659____spec__1(lean_object*, lean_object*);
static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1195____rarg___closed__35;
@ -4746,44 +4745,7 @@ x_1 = l_Lean_Lsp_instInhabitedPublishDiagnosticsParams___closed__2;
return x_1;
}
}
LEAN_EXPORT uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(lean_object* x_1, lean_object* x_2) {
_start:
{
if (lean_obj_tag(x_1) == 0)
{
if (lean_obj_tag(x_2) == 0)
{
uint8_t x_3;
x_3 = 1;
return x_3;
}
else
{
uint8_t x_4;
x_4 = 0;
return x_4;
}
}
else
{
if (lean_obj_tag(x_2) == 0)
{
uint8_t x_5;
x_5 = 0;
return x_5;
}
else
{
lean_object* x_6; lean_object* x_7; uint8_t x_8;
x_6 = lean_ctor_get(x_1, 0);
x_7 = lean_ctor_get(x_2, 0);
x_8 = lean_int_dec_eq(x_6, x_7);
return x_8;
}
}
}
}
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(lean_object* x_1, lean_object* x_2) {
LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__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; 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;
@ -5003,7 +4965,7 @@ return x_37;
}
}
}
LEAN_EXPORT uint8_t l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____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_EXPORT uint8_t l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____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; uint8_t x_8;
@ -5022,7 +4984,7 @@ else
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___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(x_10, x_11);
x_12 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(x_10, x_11);
if (x_12 == 0)
{
uint8_t x_13;
@ -5077,7 +5039,7 @@ return x_10;
else
{
uint8_t x_11;
x_11 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(x_4, x_7);
x_11 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Init_Omega_Constraint_0__Lean_Omega_beqConstraint____x40_Init_Omega_Constraint___hyg_65____spec__1(x_4, x_7);
lean_dec(x_7);
lean_dec(x_4);
if (x_11 == 0)
@ -5108,7 +5070,7 @@ else
{
lean_object* x_17; uint8_t x_18;
x_17 = lean_unsigned_to_nat(0u);
x_18 = l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__3(x_5, x_8, lean_box(0), x_5, x_8, x_17);
x_18 = l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(x_5, x_8, lean_box(0), x_5, x_8, x_17);
lean_dec(x_8);
lean_dec(x_5);
return x_18;
@ -5117,31 +5079,20 @@ return x_18;
}
}
}
LEAN_EXPORT lean_object* l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1___boxed(lean_object* x_1, lean_object* x_2) {
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1___boxed(lean_object* x_1, lean_object* x_2) {
_start:
{
uint8_t x_3; lean_object* x_4;
x_3 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(x_1, x_2);
lean_dec(x_2);
lean_dec(x_1);
x_3 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__1(x_1, x_2);
x_4 = lean_box(x_3);
return x_4;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2___boxed(lean_object* x_1, lean_object* x_2) {
_start:
{
uint8_t x_3; lean_object* x_4;
x_3 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_884____at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__2(x_1, x_2);
x_4 = lean_box(x_3);
return x_4;
}
}
LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____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_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____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:
{
uint8_t x_7; lean_object* x_8;
x_7 = l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____spec__3(x_1, x_2, x_3, x_4, x_5, x_6);
x_7 = l_Array_isEqvAux___at___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqPublishDiagnosticsParams____x40_Lean_Data_Lsp_Diagnostics___hyg_1637____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_2);

View file

@ -13,6 +13,7 @@
#ifdef __cplusplus
extern "C" {
#endif
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange(lean_object*, lean_object*);
uint32_t lean_string_utf8_get(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Utf16_0__Lean_FileMap_lineStartPos(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_String_utf16PosToCodepointPos___boxed(lean_object*, lean_object*);
@ -32,6 +33,7 @@ lean_object* lean_string_utf8_byte_size(lean_object*);
LEAN_EXPORT lean_object* l_Lean_FileMap_lspPosToUtf8Pos(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Utf16_0__Lean_FileMap_lineStartPos___boxed(lean_object*, lean_object*);
lean_object* lean_string_utf8_next(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange___boxed(lean_object*, lean_object*);
uint8_t lean_uint32_dec_le(uint32_t, uint32_t);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Utf16_0__String_codepointPosToUtf16PosFromAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Utf16_0__String_utf16PosToCodepointPosFromAux(lean_object*, lean_object*, lean_object*, lean_object*);
@ -467,6 +469,30 @@ lean_dec(x_1);
return x_3;
}
}
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange(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;
x_3 = lean_ctor_get(x_2, 0);
x_4 = l_Lean_FileMap_utf8PosToLspPos(x_1, x_3);
x_5 = lean_ctor_get(x_2, 1);
x_6 = l_Lean_FileMap_utf8PosToLspPos(x_1, x_5);
x_7 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_7, 0, x_4);
lean_ctor_set(x_7, 1, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange___boxed(lean_object* x_1, lean_object* x_2) {
_start:
{
lean_object* x_3;
x_3 = l_Lean_FileMap_utf8RangeToLspRange(x_1, x_2);
lean_dec(x_2);
lean_dec(x_1);
return x_3;
}
}
LEAN_EXPORT lean_object* l_Lean_DeclarationRange_toLspRange(lean_object* x_1) {
_start:
{

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab
// Imports: Lean.Elab.Import Lean.Elab.Exception Lean.Elab.Config Lean.Elab.Command Lean.Elab.Term Lean.Elab.App Lean.Elab.Binders Lean.Elab.BinderPredicates Lean.Elab.LetRec Lean.Elab.Frontend Lean.Elab.BuiltinNotation Lean.Elab.Declaration Lean.Elab.Tactic Lean.Elab.Match Lean.Elab.Quotation Lean.Elab.Syntax Lean.Elab.Do Lean.Elab.StructInst Lean.Elab.Inductive Lean.Elab.Structure Lean.Elab.Print Lean.Elab.MutualDef Lean.Elab.AuxDef Lean.Elab.PreDefinition Lean.Elab.Deriving Lean.Elab.DeclarationRange Lean.Elab.Extra Lean.Elab.GenInjective Lean.Elab.BuiltinTerm Lean.Elab.Arg Lean.Elab.PatternVar Lean.Elab.ElabRules Lean.Elab.Macro Lean.Elab.Notation Lean.Elab.Mixfix Lean.Elab.MacroRules Lean.Elab.BuiltinCommand Lean.Elab.RecAppSyntax Lean.Elab.Eval Lean.Elab.Calc Lean.Elab.InheritDoc Lean.Elab.ParseImportsFast
// Imports: Lean.Elab.Import Lean.Elab.Exception Lean.Elab.Config Lean.Elab.Command Lean.Elab.Term Lean.Elab.App Lean.Elab.Binders Lean.Elab.BinderPredicates Lean.Elab.LetRec Lean.Elab.Frontend Lean.Elab.BuiltinNotation Lean.Elab.Declaration Lean.Elab.Tactic Lean.Elab.Match Lean.Elab.Quotation Lean.Elab.Syntax Lean.Elab.Do Lean.Elab.StructInst Lean.Elab.Inductive Lean.Elab.Structure Lean.Elab.Print Lean.Elab.MutualDef Lean.Elab.AuxDef Lean.Elab.PreDefinition Lean.Elab.Deriving Lean.Elab.DeclarationRange Lean.Elab.Extra Lean.Elab.GenInjective Lean.Elab.BuiltinTerm Lean.Elab.Arg Lean.Elab.PatternVar Lean.Elab.ElabRules Lean.Elab.Macro Lean.Elab.Notation Lean.Elab.Mixfix Lean.Elab.MacroRules Lean.Elab.BuiltinCommand Lean.Elab.RecAppSyntax Lean.Elab.Eval Lean.Elab.Calc Lean.Elab.InheritDoc Lean.Elab.ParseImportsFast Lean.Elab.GuardMsgs
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -55,6 +55,7 @@ lean_object* initialize_Lean_Elab_Eval(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Calc(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_InheritDoc(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_ParseImportsFast(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_GuardMsgs(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab(uint8_t builtin, lean_object* w) {
lean_object * res;
@ -186,6 +187,9 @@ lean_dec_ref(res);
res = initialize_Lean_Elab_ParseImportsFast(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_GuardMsgs(builtin, 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

View file

@ -223,6 +223,7 @@ lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t);
lean_object* lean_array_fget(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_App_0__Lean_Elab_Term_elabAppFn___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabAppArgs_elabAsElim_x3f___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* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(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_App_0__Lean_Elab_Term_resolveLValAux___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_PersistentArray_forIn___at___private_Lean_Elab_App_0__Lean_Elab_Term_resolveLValAux___spec__3___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_Lean_Elab_Term_elabAppArgs___lambda__5___closed__7;
@ -687,7 +688,6 @@ static lean_object* l_List_foldlM___at_Lean_Elab_Term_ElabElim_revertArgs___spec
LEAN_EXPORT lean_object* l___private_Lean_Elab_App_0__Lean_Elab_Term_ElabAppArgs_isNextOutParamOfLocalInstanceAndResult___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___regBuiltin_Lean_Elab_Term_elabExplicit_declRange___closed__1;
static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_App___hyg_6707____lambda__2___closed__4;
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*);
lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___private_Lean_Elab_App_0__Lean_Elab_Term_ElabAppArgs_shouldPropagateExpectedTypeFor___closed__1;
@ -25404,7 +25404,7 @@ x_7 = lean_ctor_get(x_1, 1);
lean_inc(x_7);
x_8 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabAppArgs_getElabAsElimExtraArgsPos___lambda__1___boxed), 8, 1);
lean_closure_set(x_8, 0, x_1);
x_9 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_7, x_8, x_2, x_3, x_4, x_5, x_6);
x_9 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_7, x_8, x_2, x_3, x_4, x_5, x_6);
return x_9;
}
}

File diff suppressed because it is too large Load diff

3869
stage0/stdlib/Lean/Elab/GuardMsgs.c generated Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -159,6 +159,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMut
lean_object* l_Lean_mkHashSetImp___rarg(lean_object*);
static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__4;
lean_object* l_Lean_instBEqLocalInstance___boxed(lean_object*, lean_object*);
uint8_t l_Array_contains___at_Lean_findField_x3f___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___rarg___lambda__3(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__5___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__6(lean_object*);
uint8_t l_Lean_HashSetImp_contains___at_Lean_CollectLevelParams_visitLevel___spec__1(lean_object*, lean_object*);
@ -228,7 +229,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosur
static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Term_elabMutualDef_processDeriving___spec__6___closed__5;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__2___closed__1;
uint8_t l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__5(lean_object*, 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_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6___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*, lean_object*, lean_object*, lean_object*, lean_object*);
extern lean_object* l_Lean_Elab_WF_TerminationHints_none;
@ -27401,7 +27401,7 @@ if (x_6 == 0)
lean_object* x_7; lean_object* x_8; uint8_t x_9;
x_7 = lean_array_uget(x_3, x_4);
x_8 = lean_ctor_get(x_2, 2);
x_9 = l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(x_8, x_7);
x_9 = l_Array_contains___at_Lean_findField_x3f___spec__1(x_8, x_7);
if (x_9 == 0)
{
uint8_t x_10;

View file

@ -113,6 +113,7 @@ lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object
lean_object* l_Lean_Expr_bvar___override(lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
extern lean_object* l_Lean_ForEachExprWhere_initCache;
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Elab_PreDefinition_Eqns_0__Lean_Elab_Eqns_saveEqn___spec__32___at___private_Lean_Elab_PreDefinition_Eqns_0__Lean_Elab_Eqns_saveEqn___spec__33(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_ForEachExprWhere_visit_go___at_Lean_Elab_Eqns_simpEqnType_collect___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -332,7 +333,6 @@ LEAN_EXPORT lean_object* l_Lean_ForEachExprWhere_visit_go___at_Lean_Elab_Eqns_si
lean_object* l_Lean_Meta_simpIfTarget(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Eqns_removeUnusedEqnHypotheses_go___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_forInUnsafe_loop___at___private_Lean_Elab_PreDefinition_Eqns_0__Lean_Elab_Eqns_saveEqn_collectDeps___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* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Eqns_expandRHS_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Eqns_mkUnfoldProof___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -3118,7 +3118,7 @@ _start:
lean_object* x_8; lean_object* x_9;
x_8 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_Eqns_0__Lean_Elab_Eqns_lhsDependsOn___lambda__1___boxed), 8, 1);
lean_closure_set(x_8, 0, x_2);
x_9 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_1, x_8, x_3, x_4, x_5, x_6, x_7);
x_9 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_1, x_8, x_3, x_4, x_5, x_6, x_7);
return x_9;
}
}

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.PreDefinition.Structural.BRecOn
// Imports: Lean.Util.HasConstCache Lean.Meta.Match.Match Lean.Elab.RecAppSyntax Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic
// Imports: Lean.Util.HasConstCache Lean.Meta.Match.MatcherApp.Transform Lean.Elab.RecAppSyntax Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -2800,7 +2800,7 @@ static lean_object* _init_l_List_forIn_loop___at___private_Lean_Elab_PreDefiniti
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -2826,7 +2826,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_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__14___closed__1;
x_2 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__14___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__14___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -14378,7 +14378,7 @@ return x_18;
}
}
lean_object* initialize_Lean_Util_HasConstCache(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_Match(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_MatcherApp_Transform(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_RecAppSyntax(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_PreDefinition_Structural_Basic(uint8_t builtin, lean_object*);
@ -14390,7 +14390,7 @@ _G_initialized = true;
res = initialize_Lean_Util_HasConstCache(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Match_Match(builtin, lean_io_mk_world());
res = initialize_Lean_Meta_Match_MatcherApp_Transform(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_RecAppSyntax(builtin, lean_io_mk_world());

View file

@ -447,7 +447,7 @@ static lean_object* _init_l_List_forIn_loop___at___private_Lean_Elab_PreDefiniti
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -473,7 +473,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_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_IndPred_0__Lean_Elab_Structural_replaceIndPredRecApps_loop_addBelow___spec__6___closed__1;
x_2 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_IndPred_0__Lean_Elab_Structural_replaceIndPredRecApps_loop_addBelow___spec__6___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_Structural_IndPred_0__Lean_Elab_Structural_replaceIndPredRecApps_loop_addBelow___spec__6___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.PreDefinition.Structural.SmartUnfolding
// Imports: Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic
// Imports: Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic Lean.Meta.Match.MatcherApp.Basic
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -35,6 +35,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___
static lean_object* l_Lean_Elab_Structural_addSmartUnfoldingDefAux___closed__1;
lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_Match_MatcherInfo_arity(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__1___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_Meta_getMatcherInfo_x3f___at_Lean_Meta_reduceMatcher_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -75,7 +76,6 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__1___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_Meta_matchMatcherApp_x3f___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__1___lambda__2___closed__1;
LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Meta_matchMatcherApp_x3f___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__1___lambda__3(uint8_t, 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_Meta_instMonadMetaM;
@ -159,7 +159,7 @@ static lean_object* _init_l_List_forIn_loop___at_Lean_Elab_Structural_addSmartUn
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -185,7 +185,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_List_forIn_loop___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__3___closed__1;
x_2 = l_List_forIn_loop___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__3___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__3___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -2948,7 +2948,7 @@ lean_object* x_82; lean_object* x_83;
x_82 = lean_alloc_closure((void*)(l_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___lambda__2), 9, 2);
lean_closure_set(x_82, 0, x_1);
lean_closure_set(x_82, 1, x_2);
x_83 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_3, x_82, x_4, x_5, x_6, x_7, x_8);
x_83 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_3, x_82, x_4, x_5, x_6, x_7, x_8);
return x_83;
}
case 8:
@ -3650,6 +3650,7 @@ return x_27;
}
lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_PreDefinition_Structural_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_MatcherApp_Basic(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_Structural_SmartUnfolding(uint8_t builtin, lean_object* w) {
lean_object * res;
@ -3661,6 +3662,9 @@ lean_dec_ref(res);
res = initialize_Lean_Elab_PreDefinition_Structural_Basic(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Match_MatcherApp_Basic(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_panic___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__2___closed__1 = _init_l_panic___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__2___closed__1();
lean_mark_persistent(l_panic___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__2___closed__1);
l_List_forIn_loop___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__3___closed__1 = _init_l_List_forIn_loop___at_Lean_Elab_Structural_addSmartUnfoldingDefAux_visit___spec__3___closed__1();

View file

@ -1097,7 +1097,7 @@ static lean_object* _init_l_List_forIn_loop___at_Lean_Elab_WF_simpMatchWF_x3f_pr
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -1115,7 +1115,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_List_forIn_loop___at_Lean_Elab_WF_simpMatchWF_x3f_pre___spec__3___closed__1;
x_2 = l_List_forIn_loop___at_Lean_Elab_WF_simpMatchWF_x3f_pre___spec__3___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -1558,7 +1558,7 @@ static lean_object* _init_l_List_forIn_loop___at___private_Lean_Elab_PreDefiniti
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -1584,7 +1584,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_List_forIn_loop___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_replaceRecApps_loop___spec__14___closed__1;
x_2 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_replaceRecApps_loop___spec__14___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_replaceRecApps_loop___spec__14___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.PreDefinition.WF.GuessLex
// Imports: Lean.Util.HasConstCache Lean.Meta.Match.Match Lean.Meta.Tactic.Cleanup Lean.Meta.Tactic.Refl Lean.Elab.Quotation Lean.Elab.RecAppSyntax Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic Lean.Elab.PreDefinition.WF.TerminationHint Lean.Elab.PreDefinition.WF.PackMutual Lean.Data.Array
// Imports: Lean.Util.HasConstCache Lean.Meta.Match.MatcherApp.Transform Lean.Meta.Tactic.Cleanup Lean.Meta.Tactic.Refl Lean.Elab.Quotation Lean.Elab.RecAppSyntax Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural.Basic Lean.Elab.PreDefinition.WF.TerminationHint Lean.Elab.PreDefinition.WF.PackMutual Lean.Data.Array
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -129,6 +129,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_WF_GuessLex_collectRecCalls___lambda__4(lea
static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_WF_GuessLex_explainMutualFailure___spec__5___closed__8;
static lean_object* l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__14___rarg___closed__2;
static lean_object* l_Lean_Elab_WF_GuessLex_withRecApps___rarg___closed__4;
uint8_t l_Array_contains___at_Lean_findField_x3f___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_GuessLex_filterSubsumed___spec__6___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_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_GuessLex_naryVarNames___spec__1___closed__1;
LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_GuessLex_solve_go___spec__2___rarg___lambda__4(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*);
@ -193,7 +194,6 @@ static lean_object* l_Lean_Elab_WF_GuessLex_evalRecCall___closed__2;
LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_evalRecCall___spec__3___lambda__6(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_WF_GuessLex_generateCombinations_x3f_goUniform___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__31___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_WF_guessLex___spec__11___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_getConstInfo___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__3___rarg___closed__3;
static lean_object* l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_evalRecCall___spec__3___lambda__8___closed__1;
@ -1151,7 +1151,7 @@ if (x_9 == 0)
lean_object* x_10; lean_object* x_11; uint8_t x_12;
x_10 = lean_ctor_get(x_8, 0);
x_11 = lean_ctor_get(x_8, 1);
x_12 = l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(x_1, x_2);
x_12 = l_Array_contains___at_Lean_findField_x3f___spec__1(x_1, x_2);
if (x_12 == 0)
{
uint8_t x_13;
@ -1194,7 +1194,7 @@ x_21 = lean_ctor_get(x_8, 1);
lean_inc(x_21);
lean_inc(x_20);
lean_dec(x_8);
x_22 = l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(x_1, x_2);
x_22 = l_Array_contains___at_Lean_findField_x3f___spec__1(x_1, x_2);
if (x_22 == 0)
{
uint8_t x_23;
@ -2465,7 +2465,7 @@ static lean_object* _init_l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_withRecAp
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -2491,7 +2491,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_List_forIn_loop___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__14___rarg___closed__1;
x_2 = l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__14___rarg___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at_Lean_Elab_WF_GuessLex_withRecApps_loop___spec__14___rarg___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -27144,7 +27144,7 @@ return x_18;
}
}
lean_object* initialize_Lean_Util_HasConstCache(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_Match(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_MatcherApp_Transform(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Cleanup(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Refl(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Quotation(uint8_t builtin, lean_object*);
@ -27162,7 +27162,7 @@ _G_initialized = true;
res = initialize_Lean_Util_HasConstCache(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Match_Match(builtin, lean_io_mk_world());
res = initialize_Lean_Meta_Match_MatcherApp_Transform(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Tactic_Cleanup(builtin, lean_io_mk_world());

File diff suppressed because it is too large Load diff

View file

@ -167,6 +167,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_StructInst_0
lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Elab_Term_StructInst_expandStructInstFieldAbbrev___lambda__1___closed__6;
LEAN_EXPORT lean_object* l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_toFieldLHS___boxed(lean_object*, lean_object*, lean_object*);
@ -474,7 +475,6 @@ static lean_object* l_Lean_Elab_Term_StructInst_expandStructInstExpectedType___c
LEAN_EXPORT lean_object* l_Lean_Elab_Term_StructInst_instToStringFieldStruct;
LEAN_EXPORT lean_object* l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_groupFields___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_Lean_mkHashMap___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_mkFieldMap___spec__12___boxed(lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*);
static lean_object* l_Lean_Elab_Term_StructInst_DefaultFields_mkDefaultValueAux_x3f___closed__2;
static lean_object* l_Lean_Elab_Term_StructInst_expandStructInstFieldAbbrev___lambda__1___closed__5;
@ -2270,7 +2270,7 @@ static lean_object* _init_l___private_Lean_Elab_StructInst_0__Lean_Elab_Term_Str
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("src", 3);
x_1 = lean_mk_string_from_bytes("__src", 5);
return x_1;
}
}
@ -3282,7 +3282,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__2;
x_3 = lean_unsigned_to_nat(112u);
x_3 = lean_unsigned_to_nat(130u);
x_4 = lean_unsigned_to_nat(43u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -7840,7 +7840,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_Lean_Elab_Term_StructInst_FieldVal_toSyntax___closed__1;
x_3 = lean_unsigned_to_nat(317u);
x_3 = lean_unsigned_to_nat(335u);
x_4 = lean_unsigned_to_nat(25u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -7915,7 +7915,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_Lean_Elab_Term_StructInst_Field_toSyntax___closed__1;
x_3 = lean_unsigned_to_nat(325u);
x_3 = lean_unsigned_to_nat(343u);
x_4 = lean_unsigned_to_nat(11u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -10703,7 +10703,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_List_mapTR_loop___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_expandParentFields___spec__2___closed__1;
x_3 = lean_unsigned_to_nat(425u);
x_3 = lean_unsigned_to_nat(443u);
x_4 = lean_unsigned_to_nat(28u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -11873,7 +11873,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_List_foldlM___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_mkFieldMap___spec__13___closed__1;
x_3 = lean_unsigned_to_nat(443u);
x_3 = lean_unsigned_to_nat(461u);
x_4 = lean_unsigned_to_nat(11u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -21356,7 +21356,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_Lean_Elab_Term_StructInst_DefaultFields_getFieldName___closed__1;
x_3 = lean_unsigned_to_nat(750u);
x_3 = lean_unsigned_to_nat(768u);
x_4 = lean_unsigned_to_nat(9u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -23169,7 +23169,7 @@ case 7:
lean_object* x_79; lean_object* x_80;
x_79 = lean_alloc_closure((void*)(l_Lean_Elab_Term_StructInst_DefaultFields_reduce___lambda__2), 8, 1);
lean_closure_set(x_79, 0, x_1);
x_80 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_2, x_79, x_3, x_4, x_5, x_6, x_7);
x_80 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_2, x_79, x_3, x_4, x_5, x_6, x_7);
return x_80;
}
case 8:
@ -24418,7 +24418,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_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__1;
x_2 = l_List_forIn_loop___at_Lean_Elab_Term_StructInst_DefaultFields_step___spec__3___closed__1;
x_3 = lean_unsigned_to_nat(864u);
x_3 = lean_unsigned_to_nat(882u);
x_4 = lean_unsigned_to_nat(25u);
x_5 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_StructInst_0__Lean_Elab_Term_StructInst_getStructSource___spec__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28756,7 +28756,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Term_StructInst_elabStructIns
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(930u);
x_1 = lean_unsigned_to_nat(948u);
x_2 = lean_unsigned_to_nat(32u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -28768,7 +28768,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Term_StructInst_elabStructIns
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(940u);
x_1 = lean_unsigned_to_nat(958u);
x_2 = lean_unsigned_to_nat(52u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -28796,7 +28796,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Term_StructInst_elabStructIns
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(930u);
x_1 = lean_unsigned_to_nat(948u);
x_2 = lean_unsigned_to_nat(36u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -28808,7 +28808,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Term_StructInst_elabStructIns
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(930u);
x_1 = lean_unsigned_to_nat(948u);
x_2 = lean_unsigned_to_nat(50u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);

View file

@ -163,6 +163,7 @@ static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_Structure_0__L
lean_object* l_Lean_mkHashSetImp___rarg(lean_object*);
static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldInfo____x40_Lean_Elab_Structure___hyg_537____closed__18;
lean_object* l_Lean_instBEqLocalInstance___boxed(lean_object*, lean_object*);
uint8_t l_Array_contains___at_Lean_findField_x3f___spec__1(lean_object*, lean_object*);
static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addDefaults___spec__2___closed__1;
LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, 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* l_Lean_mkFreshId___at_Lean_Meta_mkFreshExprMVarAt___spec__2___rarg(lean_object*, lean_object*);
@ -222,7 +223,6 @@ lean_object* l_Lean_mkIdentFrom(lean_object*, lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__3(lean_object*);
LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_mkCompositeField___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_Array_mapMUnsafe_map___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_updateFieldInfoVal___spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*);
uint8_t l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandCtor___spec__5___lambda__3(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__3___closed__5;
static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_getResultUniverse___closed__2;
@ -13970,7 +13970,7 @@ x_4 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_containsFieldName(x_1
if (x_4 == 0)
{
uint8_t x_5;
x_5 = l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(x_2, x_3);
x_5 = l_Array_contains___at_Lean_findField_x3f___spec__1(x_2, x_3);
if (x_5 == 0)
{
uint8_t x_6;
@ -24380,7 +24380,7 @@ else
{
lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_26;
x_16 = lean_array_uget(x_5, x_7);
x_26 = l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1(x_2, x_16);
x_26 = l_Array_contains___at_Lean_findField_x3f___spec__1(x_2, x_16);
if (x_26 == 0)
{
lean_object* x_27;

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic
// Imports: Lean.Elab.Term Lean.Elab.Tactic.Basic Lean.Elab.Tactic.ElabTerm Lean.Elab.Tactic.Induction Lean.Elab.Tactic.Generalize Lean.Elab.Tactic.Injection Lean.Elab.Tactic.Match Lean.Elab.Tactic.Rewrite Lean.Elab.Tactic.Location Lean.Elab.Tactic.SimpTrace Lean.Elab.Tactic.Simp Lean.Elab.Tactic.Simproc Lean.Elab.Tactic.BuiltinTactic Lean.Elab.Tactic.Split Lean.Elab.Tactic.Conv Lean.Elab.Tactic.Delta Lean.Elab.Tactic.Meta Lean.Elab.Tactic.Unfold Lean.Elab.Tactic.Cache Lean.Elab.Tactic.Calc Lean.Elab.Tactic.Congr Lean.Elab.Tactic.Guard Lean.Elab.Tactic.RCases Lean.Elab.Tactic.Repeat Lean.Elab.Tactic.Ext Lean.Elab.Tactic.Change Lean.Elab.Tactic.FalseOrByContra Lean.Elab.Tactic.Omega Lean.Elab.Tactic.Simpa Lean.Elab.Tactic.NormCast Lean.Elab.Tactic.Symm Lean.Elab.Tactic.SolveByElim
// Imports: Lean.Elab.Term Lean.Elab.Tactic.Basic Lean.Elab.Tactic.ElabTerm Lean.Elab.Tactic.Induction Lean.Elab.Tactic.Generalize Lean.Elab.Tactic.Injection Lean.Elab.Tactic.Match Lean.Elab.Tactic.Rewrite Lean.Elab.Tactic.Location Lean.Elab.Tactic.SimpTrace Lean.Elab.Tactic.Simp Lean.Elab.Tactic.Simproc Lean.Elab.Tactic.BuiltinTactic Lean.Elab.Tactic.Split Lean.Elab.Tactic.Conv Lean.Elab.Tactic.Delta Lean.Elab.Tactic.Meta Lean.Elab.Tactic.Unfold Lean.Elab.Tactic.Cache Lean.Elab.Tactic.Calc Lean.Elab.Tactic.Congr Lean.Elab.Tactic.Guard Lean.Elab.Tactic.RCases Lean.Elab.Tactic.Repeat Lean.Elab.Tactic.Ext Lean.Elab.Tactic.Change Lean.Elab.Tactic.FalseOrByContra Lean.Elab.Tactic.Omega Lean.Elab.Tactic.Simpa Lean.Elab.Tactic.NormCast Lean.Elab.Tactic.Symm Lean.Elab.Tactic.SolveByElim Lean.Elab.Tactic.LibrarySearch
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -45,6 +45,7 @@ lean_object* initialize_Lean_Elab_Tactic_Simpa(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_NormCast(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_Symm(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_SolveByElim(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_LibrarySearch(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic(uint8_t builtin, lean_object* w) {
lean_object * res;
@ -146,6 +147,9 @@ lean_dec_ref(res);
res = initialize_Lean_Elab_Tactic_SolveByElim(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_Tactic_LibrarySearch(builtin, 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

View file

@ -28,6 +28,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta___closed__4;
static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta___closed__8;
size_t lean_usize_of_nat(lean_object*);
static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta___closed__2;
lean_object* l_Array_contains___at_Lean_findField_x3f___spec__1___boxed(lean_object*, lean_object*);
static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta___closed__11;
lean_object* l_Lean_Elab_Tactic_Conv_changeLhs(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_getLhs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -47,7 +48,6 @@ lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalDelta___spec__19(s
LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalDelta(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_evalDelta_declRange___closed__2;
static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta_declRange___closed__5;
lean_object* l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1___boxed(lean_object*, lean_object*);
static lean_object* l___regBuiltin_Lean_Elab_Tactic_Conv_evalDelta_declRange___closed__3;
lean_object* lean_array_get_size(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Conv_evalDelta___lambda__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*);
@ -97,7 +97,7 @@ lean_inc(x_20);
x_21 = lean_ctor_get(x_19, 1);
lean_inc(x_21);
lean_dec(x_19);
x_22 = lean_alloc_closure((void*)(l_Array_contains___at___private_Lean_Meta_Match_Value_0__Lean_Meta_isUIntTypeName___spec__1___boxed), 2, 1);
x_22 = lean_alloc_closure((void*)(l_Array_contains___at_Lean_findField_x3f___spec__1___boxed), 2, 1);
lean_closure_set(x_22, 0, x_14);
lean_inc(x_11);
lean_inc(x_10);

View file

@ -150,6 +150,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Ext_ExtTheorems_eraseCore(lean_objec
lean_object* l_Lean_Elab_Command_elabCommand(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Ext_ExtTheorems_erase___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Elab_Tactic_Ext_initFn____x40_Lean_Elab_Tactic_Ext___hyg_321____spec__1___closed__2;
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Elab_Tactic_Ext_initFn____x40_Lean_Elab_Tactic_Ext___hyg_321____spec__3___boxed(lean_object*, lean_object*, lean_object*);
@ -408,7 +409,6 @@ static lean_object* l_Lean_Elab_Tactic_Ext_initFn____x40_Lean_Elab_Tactic_Ext___
LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Tactic_Ext_elabExtType___spec__4(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_Ext_evalApplyExtTheorem___closed__1;
lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*);
static lean_object* l_Lean_Elab_Tactic_Ext_initFn____x40_Lean_Elab_Tactic_Ext___hyg_614____lambda__6___closed__5;
lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -9155,7 +9155,7 @@ lean_closure_set(x_17, 0, x_11);
lean_closure_set(x_17, 1, x_16);
lean_closure_set(x_17, 2, x_1);
lean_closure_set(x_17, 3, x_3);
x_18 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_14, x_17, x_5, x_6, x_7, x_8, x_15);
x_18 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_14, x_17, x_5, x_6, x_7, x_8, x_15);
return x_18;
}
else

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic.NormCast
// Imports: Init Lean.Meta.Tactic.NormCast Lean.Elab.Tactic.Conv.Simp Lean.Elab.ElabRules
// Imports: Lean.Meta.Tactic.NormCast Lean.Elab.Tactic.Conv.Simp Lean.Elab.ElabRules
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -13155,7 +13155,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabModCast_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(206u);
x_1 = lean_unsigned_to_nat(207u);
x_2 = lean_unsigned_to_nat(29u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -13167,7 +13167,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabModCast_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(221u);
x_1 = lean_unsigned_to_nat(222u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -13195,7 +13195,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabModCast_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(206u);
x_1 = lean_unsigned_to_nat(207u);
x_2 = lean_unsigned_to_nat(33u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -13207,7 +13207,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabModCast_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(206u);
x_1 = lean_unsigned_to_nat(207u);
x_2 = lean_unsigned_to_nat(44u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14586,7 +14586,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalNormCast0
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(238u);
x_1 = lean_unsigned_to_nat(239u);
x_2 = lean_unsigned_to_nat(0u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14598,7 +14598,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalNormCast0
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(250u);
x_1 = lean_unsigned_to_nat(251u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14626,7 +14626,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalNormCast0
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(238u);
x_1 = lean_unsigned_to_nat(239u);
x_2 = lean_unsigned_to_nat(4u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14638,7 +14638,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalNormCast0
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(238u);
x_1 = lean_unsigned_to_nat(239u);
x_2 = lean_unsigned_to_nat(17u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14892,7 +14892,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalConvNormC
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(253u);
x_1 = lean_unsigned_to_nat(254u);
x_2 = lean_unsigned_to_nat(0u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14904,7 +14904,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalConvNormC
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(255u);
x_1 = lean_unsigned_to_nat(256u);
x_2 = lean_unsigned_to_nat(41u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14932,7 +14932,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalConvNormC
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(253u);
x_1 = lean_unsigned_to_nat(254u);
x_2 = lean_unsigned_to_nat(4u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -14944,7 +14944,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalConvNormC
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(253u);
x_1 = lean_unsigned_to_nat(254u);
x_2 = lean_unsigned_to_nat(20u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -15370,7 +15370,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalPushCast_
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(258u);
x_1 = lean_unsigned_to_nat(259u);
x_2 = lean_unsigned_to_nat(0u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -15382,7 +15382,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalPushCast_
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(263u);
x_1 = lean_unsigned_to_nat(264u);
x_2 = lean_unsigned_to_nat(78u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -15410,7 +15410,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalPushCast_
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(258u);
x_1 = lean_unsigned_to_nat(259u);
x_2 = lean_unsigned_to_nat(4u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -15422,7 +15422,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_evalPushCast_
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(258u);
x_1 = lean_unsigned_to_nat(259u);
x_2 = lean_unsigned_to_nat(16u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -16736,7 +16736,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabAddElim_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(266u);
x_1 = lean_unsigned_to_nat(267u);
x_2 = lean_unsigned_to_nat(54u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -16748,7 +16748,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabAddElim_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(271u);
x_1 = lean_unsigned_to_nat(272u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -16776,7 +16776,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabAddElim_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(266u);
x_1 = lean_unsigned_to_nat(267u);
x_2 = lean_unsigned_to_nat(58u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -16788,7 +16788,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_NormCast_elabAddElim_d
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(266u);
x_1 = lean_unsigned_to_nat(267u);
x_2 = lean_unsigned_to_nat(69u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -16834,7 +16834,6 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1);
return x_4;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_NormCast(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_Conv_Simp(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_ElabRules(uint8_t builtin, lean_object*);
@ -16843,9 +16842,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_NormCast(uint8_t builtin, l
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Tactic_NormCast(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic.Omega
// Imports: Init Lean.Elab.Tactic.Omega.Frontend
// Imports: Lean.Elab.Tactic.Omega.Frontend
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -13,16 +13,12 @@
#ifdef __cplusplus
extern "C" {
#endif
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_Omega_Frontend(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_Omega(uint8_t builtin, lean_object* w) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_Tactic_Omega_Frontend(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic.Omega.MinNatAbs
// Imports: Init
// Imports: Init.BinderPredicates Init.Data.List Init.Data.Option
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -346,13 +346,21 @@ lean_dec(x_1);
return x_2;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Init_BinderPredicates(uint8_t builtin, lean_object*);
lean_object* initialize_Init_Data_List(uint8_t builtin, lean_object*);
lean_object* initialize_Init_Data_Option(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_Omega_MinNatAbs(uint8_t builtin, lean_object* w) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
res = initialize_Init_BinderPredicates(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_Data_List(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Init_Data_Option(builtin, 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));

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic.SimpTrace
// Imports: Init Lean.Elab.ElabRules Lean.Elab.Tactic.Simp Lean.Meta.Tactic.TryThis
// Imports: Lean.Elab.ElabRules Lean.Elab.Tactic.Simp Lean.Meta.Tactic.TryThis
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -1466,7 +1466,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpTrace_declRang
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(24u);
x_1 = lean_unsigned_to_nat(25u);
x_2 = lean_unsigned_to_nat(28u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -1478,7 +1478,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpTrace_declRang
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(39u);
x_1 = lean_unsigned_to_nat(40u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -1506,7 +1506,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpTrace_declRang
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(24u);
x_1 = lean_unsigned_to_nat(25u);
x_2 = lean_unsigned_to_nat(32u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -1518,7 +1518,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpTrace_declRang
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(24u);
x_1 = lean_unsigned_to_nat(25u);
x_2 = lean_unsigned_to_nat(45u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -2803,7 +2803,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAllTrace_declR
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(41u);
x_1 = lean_unsigned_to_nat(42u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -2815,7 +2815,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAllTrace_declR
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(56u);
x_1 = lean_unsigned_to_nat(57u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -2842,7 +2842,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAllTrace_declR
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(41u);
x_1 = lean_unsigned_to_nat(42u);
x_2 = lean_unsigned_to_nat(35u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -2854,7 +2854,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAllTrace_declR
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(41u);
x_1 = lean_unsigned_to_nat(42u);
x_2 = lean_unsigned_to_nat(51u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -4500,7 +4500,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimpTrace_declRan
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(79u);
x_1 = lean_unsigned_to_nat(80u);
x_2 = lean_unsigned_to_nat(29u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -4512,7 +4512,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimpTrace_declRan
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(90u);
x_1 = lean_unsigned_to_nat(91u);
x_2 = lean_unsigned_to_nat(31u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -4540,7 +4540,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimpTrace_declRan
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(79u);
x_1 = lean_unsigned_to_nat(80u);
x_2 = lean_unsigned_to_nat(33u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -4552,7 +4552,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimpTrace_declRan
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(79u);
x_1 = lean_unsigned_to_nat(80u);
x_2 = lean_unsigned_to_nat(47u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -4598,7 +4598,6 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1);
return x_4;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_ElabRules(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_Simp(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_TryThis(uint8_t builtin, lean_object*);
@ -4607,9 +4606,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_SimpTrace(uint8_t builtin,
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Elab_ElabRules(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Elab.Tactic.Simpa
// Imports: Init Lean.Meta.Tactic.Assumption Lean.Meta.Tactic.TryThis Lean.Elab.Tactic.Simp Lean.Linter.Util
// Imports: Lean.Meta.Tactic.Assumption Lean.Meta.Tactic.TryThis Lean.Elab.Tactic.Simp Lean.Linter.Util
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -804,7 +804,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_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__1;
x_2 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__2;
x_3 = lean_unsigned_to_nat(85u);
x_3 = lean_unsigned_to_nat(86u);
x_4 = lean_unsigned_to_nat(17u);
x_5 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -2102,13 +2102,14 @@ return x_3;
static lean_object* _init_l_Std_Tactic_Simpa_evalSimpa___lambda__7___closed__10() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_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;
x_1 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__1;
x_2 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__2;
x_3 = lean_unsigned_to_nat(58u);
x_4 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__3;
x_5 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_3, x_4);
return x_5;
x_3 = lean_unsigned_to_nat(59u);
x_4 = lean_unsigned_to_nat(58u);
x_5 = l_Std_Tactic_Simpa_evalSimpa___lambda__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
return x_6;
}
}
LEAN_EXPORT lean_object* l_Std_Tactic_Simpa_evalSimpa___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_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) {
@ -5013,7 +5014,7 @@ static lean_object* _init_l___regBuiltin_Std_Tactic_Simpa_evalSimpa_declRange___
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(30u);
x_1 = lean_unsigned_to_nat(31u);
x_2 = lean_unsigned_to_nat(43u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -5025,7 +5026,7 @@ static lean_object* _init_l___regBuiltin_Std_Tactic_Simpa_evalSimpa_declRange___
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(87u);
x_1 = lean_unsigned_to_nat(88u);
x_2 = lean_unsigned_to_nat(33u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -5053,7 +5054,7 @@ static lean_object* _init_l___regBuiltin_Std_Tactic_Simpa_evalSimpa_declRange___
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(30u);
x_1 = lean_unsigned_to_nat(31u);
x_2 = lean_unsigned_to_nat(47u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -5065,7 +5066,7 @@ static lean_object* _init_l___regBuiltin_Std_Tactic_Simpa_evalSimpa_declRange___
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_unsigned_to_nat(30u);
x_1 = lean_unsigned_to_nat(31u);
x_2 = lean_unsigned_to_nat(56u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -5111,7 +5112,6 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1);
return x_4;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Assumption(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_TryThis(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Elab_Tactic_Simp(uint8_t builtin, lean_object*);
@ -5121,9 +5121,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_Simpa(uint8_t builtin, lean
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Tactic_Assumption(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

File diff suppressed because it is too large Load diff

View file

@ -36,6 +36,7 @@ static lean_object* l___private_Lean_Expr_0__Lean_reprLiteral____x40_Lean_Expr__
LEAN_EXPORT lean_object* l_Lean_instReprData__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_instBEqFVarId;
LEAN_EXPORT lean_object* l_Lean_mkLet___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Expr_getRevArg_x21_x27___closed__1;
LEAN_EXPORT lean_object* l_Lean_Expr_isHeadBetaTargetFn___boxed(lean_object*, lean_object*);
uint8_t lean_uint32_to_uint8(uint32_t);
LEAN_EXPORT lean_object* l_Lean_Expr_looseBVarRange(lean_object*);
@ -126,12 +127,14 @@ LEAN_EXPORT uint8_t l_Lean_Expr_isLet(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_getAppFn___boxed(lean_object*);
static lean_object* l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hyg_2961____closed__26;
LEAN_EXPORT uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Expr_isRawNatLit(lean_object*);
static lean_object* l___private_Lean_Expr_0__Lean_reprMVarId____x40_Lean_Expr___hyg_1952____closed__4;
LEAN_EXPORT lean_object* l_Lean_inaccessible_x3f___boxed(lean_object*);
static lean_object* l_Lean_mkNatLit___closed__6;
LEAN_EXPORT uint8_t l_Lean_Expr_isOptParam(lean_object*);
static lean_object* l_Lean_Expr_updateLambdaE_x21___closed__1;
lean_object* l_String_quote(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_getArg_x21_x27___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Expr_isApp(lean_object*);
static lean_object* l_Lean_Expr_ctorName___closed__1;
LEAN_EXPORT lean_object* l_Lean_Expr_binderInfo___boxed(lean_object*);
@ -210,7 +213,6 @@ LEAN_EXPORT lean_object* l_Lean_instReprData__1___lambda__1___boxed(lean_object*
static lean_object* l_Lean_Expr_getRevArg_x21___closed__1;
static lean_object* l_Lean_Expr_getRevArg_x21___closed__2;
LEAN_EXPORT lean_object* l_Lean_Expr_mkAppData___boxed(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Expr_isNatLit(lean_object*);
static lean_object* l_Lean_Expr_ctorName___closed__2;
static lean_object* l___private_Lean_Expr_0__Lean_Expr_updateProj_x21Impl___closed__3;
LEAN_EXPORT lean_object* l_Lean_Expr_getBoundedAppFn(lean_object*, lean_object*);
@ -263,6 +265,7 @@ LEAN_EXPORT uint8_t l_Lean_isPatternWithRef(lean_object*);
static lean_object* l___private_Lean_Expr_0__Lean_Expr_updateLambda_x21Impl___closed__2;
LEAN_EXPORT lean_object* l_Lean_Expr_isMData___boxed(lean_object*);
static lean_object* l___private_Lean_Expr_0__Lean_reprBinderInfo____x40_Lean_Expr___hyg_415____closed__18;
LEAN_EXPORT lean_object* l_Lean_Expr_getAppFn_x27___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_quickLt___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* lean_expr_mk_bvar(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_abstractRange___boxed(lean_object*, lean_object*, lean_object*);
@ -412,7 +415,6 @@ static lean_object* l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hy
extern uint64_t l_instInhabitedUInt64;
lean_object* lean_expr_instantiate(lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Expr_isMVar(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_isNatLit___boxed(lean_object*);
static lean_object* l_Lean_mkNot___closed__2;
LEAN_EXPORT lean_object* l_Lean_Expr_appArg_x21___boxed(lean_object*);
lean_object* lean_uint64_to_nat(uint64_t);
@ -638,6 +640,7 @@ LEAN_EXPORT lean_object* l_Lean_Expr_getRevArg_x21___boxed(lean_object*, lean_ob
static lean_object* l_Lean_Expr_getAppArgsN_loop___closed__1;
LEAN_EXPORT lean_object* l_Lean_mkOr(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_eta(lean_object*);
static lean_object* l_Lean_Expr_getRevArg_x21_x27___closed__2;
static lean_object* l_Lean_mkInaccessible___closed__1;
LEAN_EXPORT lean_object* l_Lean_instMVarIdSetInhabited;
LEAN_EXPORT lean_object* l_Lean_Expr_getAppNumArgs(lean_object*);
@ -746,6 +749,7 @@ LEAN_EXPORT lean_object* l_Lean_Expr_Data_hasLevelMVar___boxed(lean_object*);
lean_object* lean_array_set(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_hasLooseBVarInExplicitDomain___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_mdataExpr_x21___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_getAppFn_x27(lean_object*);
uint64_t l_Lean_Name_hash___override(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1674____boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_constName_x21___boxed(lean_object*);
@ -831,6 +835,7 @@ LEAN_EXPORT lean_object* l_Lean_Expr_hasMVar___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkApp(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_RBNode_ins___at_Lean_MVarIdSet_insert___spec__2(lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Name_quickCmp(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_isRawNatLit___boxed(lean_object*);
lean_object* lean_uint8_to_nat(uint8_t);
LEAN_EXPORT lean_object* l_Lean_mkLambdaEx___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_patternAnnotation_x3f(lean_object*);
@ -868,6 +873,7 @@ LEAN_EXPORT lean_object* l_Lean_instReprMVarId__1___boxed(lean_object*, lean_obj
static lean_object* l_Lean_Expr_bindingName_x21___closed__1;
LEAN_EXPORT lean_object* l_Lean_mkFVar(lean_object*);
LEAN_EXPORT lean_object* l_Lean_instReprLiteral;
LEAN_EXPORT lean_object* l_Lean_Expr_getArg_x21_x27(lean_object*, lean_object*, lean_object*);
static lean_object* l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hyg_2961____closed__17;
LEAN_EXPORT lean_object* l_Lean_Expr_bindingBody_x21(lean_object*);
uint32_t lean_uint32_add(uint32_t, uint32_t);
@ -1000,6 +1006,7 @@ static lean_object* l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hy
LEAN_EXPORT uint8_t l___private_Lean_Expr_0__Lean_beqLiteral____x40_Lean_Expr___hyg_31_(lean_object*, lean_object*);
LEAN_EXPORT uint64_t l_Lean_instInhabitedData__1;
LEAN_EXPORT lean_object* l_Lean_mkFreshLMVarId___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_getRevArg_x21_x27(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_constName___boxed(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Expr_hasLevelMVar(lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId___rarg(lean_object*, lean_object*);
@ -1018,6 +1025,7 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId(lean_object*);
static lean_object* l_Lean_Expr_instBEqExpr___closed__1;
static lean_object* l_Lean_Expr_isSemiOutParam___closed__2;
static lean_object* l_Lean_Expr_ctorName___closed__8;
LEAN_EXPORT lean_object* l_Lean_Expr_getRevArg_x21_x27___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Expr_0__Lean_Expr_updateForall_x21Impl___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_etaExpandedStrict_x3f(lean_object*);
LEAN_EXPORT lean_object* l_Lean_BinderInfo_hash___boxed(lean_object*);
@ -23599,7 +23607,7 @@ return x_4;
}
}
}
LEAN_EXPORT uint8_t l_Lean_Expr_isNatLit(lean_object* x_1) {
LEAN_EXPORT uint8_t l_Lean_Expr_isRawNatLit(lean_object* x_1) {
_start:
{
if (lean_obj_tag(x_1) == 9)
@ -23627,11 +23635,11 @@ return x_5;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_isNatLit___boxed(lean_object* x_1) {
LEAN_EXPORT lean_object* l_Lean_Expr_isRawNatLit___boxed(lean_object* x_1) {
_start:
{
uint8_t x_2; lean_object* x_3;
x_2 = l_Lean_Expr_isNatLit(x_1);
x_2 = l_Lean_Expr_isRawNatLit(x_1);
lean_dec(x_1);
x_3 = lean_box(x_2);
return x_3;
@ -23756,7 +23764,7 @@ return x_7;
else
{
uint8_t x_8;
x_8 = l_Lean_Expr_isNatLit(x_3);
x_8 = l_Lean_Expr_isRawNatLit(x_3);
return x_8;
}
}
@ -24891,6 +24899,41 @@ lean_dec(x_1);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getAppFn_x27(lean_object* x_1) {
_start:
{
switch (lean_obj_tag(x_1)) {
case 5:
{
lean_object* x_2;
x_2 = lean_ctor_get(x_1, 0);
x_1 = x_2;
goto _start;
}
case 10:
{
lean_object* x_4;
x_4 = lean_ctor_get(x_1, 1);
x_1 = x_4;
goto _start;
}
default:
{
lean_inc(x_1);
return x_1;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getAppFn_x27___boxed(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = l_Lean_Expr_getAppFn_x27(x_1);
lean_dec(x_1);
return x_2;
}
}
LEAN_EXPORT uint8_t l_Lean_Expr_isAppOf(lean_object* x_1, lean_object* x_2) {
_start:
{
@ -25661,7 +25704,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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_getAppArgsN_loop___closed__1;
x_3 = lean_unsigned_to_nat(1167u);
x_3 = lean_unsigned_to_nat(1175u);
x_4 = lean_unsigned_to_nat(27u);
x_5 = l_Lean_Expr_getAppArgsN_loop___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -26015,7 +26058,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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_getRevArg_x21___closed__1;
x_3 = lean_unsigned_to_nat(1208u);
x_3 = lean_unsigned_to_nat(1216u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Expr_getRevArg_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -26068,6 +26111,82 @@ lean_dec(x_1);
return x_3;
}
}
static lean_object* _init_l_Lean_Expr_getRevArg_x21_x27___closed__1() {
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Expr.getRevArg!'", 21);
return x_1;
}
}
static lean_object* _init_l_Lean_Expr_getRevArg_x21_x27___closed__2() {
_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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_getRevArg_x21_x27___closed__1;
x_3 = lean_unsigned_to_nat(1223u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Expr_getRevArg_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
return x_6;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getRevArg_x21_x27(lean_object* x_1, lean_object* x_2) {
_start:
{
switch (lean_obj_tag(x_1)) {
case 5:
{
lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6;
x_3 = lean_ctor_get(x_1, 0);
x_4 = lean_ctor_get(x_1, 1);
x_5 = lean_unsigned_to_nat(0u);
x_6 = lean_nat_dec_eq(x_2, x_5);
if (x_6 == 0)
{
lean_object* x_7; lean_object* x_8;
x_7 = lean_unsigned_to_nat(1u);
x_8 = lean_nat_sub(x_2, x_7);
lean_dec(x_2);
x_1 = x_3;
x_2 = x_8;
goto _start;
}
else
{
lean_dec(x_2);
lean_inc(x_4);
return x_4;
}
}
case 10:
{
lean_object* x_10;
x_10 = lean_ctor_get(x_1, 1);
x_1 = x_10;
goto _start;
}
default:
{
lean_object* x_12; lean_object* x_13;
lean_dec(x_2);
x_12 = l_Lean_Expr_getRevArg_x21_x27___closed__2;
x_13 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_12);
return x_13;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getRevArg_x21_x27___boxed(lean_object* x_1, lean_object* x_2) {
_start:
{
lean_object* x_3;
x_3 = l_Lean_Expr_getRevArg_x21_x27(x_1, x_2);
lean_dec(x_1);
return x_3;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getArg_x21(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
@ -26091,6 +26210,29 @@ lean_dec(x_1);
return x_4;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getArg_x21_x27(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;
x_4 = lean_nat_sub(x_3, x_2);
x_5 = lean_unsigned_to_nat(1u);
x_6 = lean_nat_sub(x_4, x_5);
lean_dec(x_4);
x_7 = l_Lean_Expr_getRevArg_x21_x27(x_1, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getArg_x21_x27___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
lean_object* x_4;
x_4 = l_Lean_Expr_getArg_x21_x27(x_1, x_2, x_3);
lean_dec(x_3);
lean_dec(x_2);
lean_dec(x_1);
return x_4;
}
}
LEAN_EXPORT lean_object* l_Lean_Expr_getArgD(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
@ -28093,7 +28235,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateApp_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1633u);
x_3 = lean_unsigned_to_nat(1652u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Expr_appFn_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28172,7 +28314,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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_updateFVar_x21___closed__1;
x_3 = lean_unsigned_to_nat(1644u);
x_3 = lean_unsigned_to_nat(1663u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Expr_fvarId_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28233,7 +28375,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateConst_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1649u);
x_3 = lean_unsigned_to_nat(1668u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Expr_constName_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28299,7 +28441,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateSort_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1660u);
x_3 = lean_unsigned_to_nat(1679u);
x_4 = lean_unsigned_to_nat(14u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateSort_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28370,7 +28512,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateMData_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1671u);
x_3 = lean_unsigned_to_nat(1690u);
x_4 = lean_unsigned_to_nat(17u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateMData_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28438,7 +28580,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateProj_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1682u);
x_3 = lean_unsigned_to_nat(1701u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateProj_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28509,7 +28651,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateForall_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1697u);
x_3 = lean_unsigned_to_nat(1716u);
x_4 = lean_unsigned_to_nat(23u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateForall_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28612,7 +28754,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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_updateForallE_x21___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateForall_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28718,7 +28860,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateLambda_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1717u);
x_3 = lean_unsigned_to_nat(1736u);
x_4 = lean_unsigned_to_nat(19u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateLambda_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28821,7 +28963,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_Expr_mkData___closed__5;
x_2 = l_Lean_Expr_updateLambdaE_x21___closed__1;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l___private_Lean_Expr_0__Lean_Expr_updateLambda_x21Impl___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -28919,7 +29061,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_Expr_mkData___closed__5;
x_2 = l___private_Lean_Expr_0__Lean_Expr_updateLet_x21Impl___closed__1;
x_3 = lean_unsigned_to_nat(1737u);
x_3 = lean_unsigned_to_nat(1756u);
x_4 = lean_unsigned_to_nat(22u);
x_5 = l_Lean_Expr_letName_x21___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -31354,6 +31496,10 @@ l_Lean_Expr_getRevArg_x21___closed__2 = _init_l_Lean_Expr_getRevArg_x21___closed
lean_mark_persistent(l_Lean_Expr_getRevArg_x21___closed__2);
l_Lean_Expr_getRevArg_x21___closed__3 = _init_l_Lean_Expr_getRevArg_x21___closed__3();
lean_mark_persistent(l_Lean_Expr_getRevArg_x21___closed__3);
l_Lean_Expr_getRevArg_x21_x27___closed__1 = _init_l_Lean_Expr_getRevArg_x21_x27___closed__1();
lean_mark_persistent(l_Lean_Expr_getRevArg_x21_x27___closed__1);
l_Lean_Expr_getRevArg_x21_x27___closed__2 = _init_l_Lean_Expr_getRevArg_x21_x27___closed__2();
lean_mark_persistent(l_Lean_Expr_getRevArg_x21_x27___closed__2);
l_Lean_Expr_replaceFVar___closed__1 = _init_l_Lean_Expr_replaceFVar___closed__1();
lean_mark_persistent(l_Lean_Expr_replaceFVar___closed__1);
l_Lean_Expr_instToStringExpr___closed__1 = _init_l_Lean_Expr_instToStringExpr___closed__1();

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta
// Imports: Lean.Meta.Basic Lean.Meta.LevelDefEq Lean.Meta.WHNF Lean.Meta.InferType Lean.Meta.FunInfo Lean.Meta.ExprDefEq Lean.Meta.DecLevel Lean.Meta.DiscrTree Lean.Meta.Reduce Lean.Meta.Instances Lean.Meta.AbstractMVars Lean.Meta.SynthInstance Lean.Meta.AppBuilder Lean.Meta.Tactic Lean.Meta.KAbstract Lean.Meta.RecursorInfo Lean.Meta.GeneralizeTelescope Lean.Meta.Match Lean.Meta.ReduceEval Lean.Meta.Closure Lean.Meta.AbstractNestedProofs Lean.Meta.ForEachExpr Lean.Meta.Transform Lean.Meta.PPGoal Lean.Meta.UnificationHint Lean.Meta.Inductive Lean.Meta.SizeOf Lean.Meta.IndPredBelow Lean.Meta.Coe Lean.Meta.CollectFVars Lean.Meta.GeneralizeVars Lean.Meta.Injective Lean.Meta.Structure Lean.Meta.Constructions Lean.Meta.CongrTheorems Lean.Meta.Eqns Lean.Meta.ExprLens Lean.Meta.ExprTraverse Lean.Meta.Eval Lean.Meta.CoeAttr Lean.Meta.Iterator
// Imports: Lean.Meta.Basic Lean.Meta.LevelDefEq Lean.Meta.WHNF Lean.Meta.InferType Lean.Meta.FunInfo Lean.Meta.ExprDefEq Lean.Meta.DecLevel Lean.Meta.DiscrTree Lean.Meta.Reduce Lean.Meta.Instances Lean.Meta.AbstractMVars Lean.Meta.SynthInstance Lean.Meta.AppBuilder Lean.Meta.Tactic Lean.Meta.KAbstract Lean.Meta.RecursorInfo Lean.Meta.GeneralizeTelescope Lean.Meta.Match Lean.Meta.ReduceEval Lean.Meta.Closure Lean.Meta.AbstractNestedProofs Lean.Meta.ForEachExpr Lean.Meta.Transform Lean.Meta.PPGoal Lean.Meta.UnificationHint Lean.Meta.Inductive Lean.Meta.SizeOf Lean.Meta.IndPredBelow Lean.Meta.Coe Lean.Meta.CollectFVars Lean.Meta.GeneralizeVars Lean.Meta.Injective Lean.Meta.Structure Lean.Meta.Constructions Lean.Meta.CongrTheorems Lean.Meta.Eqns Lean.Meta.ExprLens Lean.Meta.ExprTraverse Lean.Meta.Eval Lean.Meta.CoeAttr Lean.Meta.Iterator Lean.Meta.LazyDiscrTree Lean.Meta.LitValues
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -54,6 +54,8 @@ lean_object* initialize_Lean_Meta_ExprTraverse(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Eval(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_CoeAttr(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Iterator(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_LazyDiscrTree(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_LitValues(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Meta(uint8_t builtin, lean_object* w) {
lean_object * res;
@ -182,6 +184,12 @@ lean_dec_ref(res);
res = initialize_Lean_Meta_Iterator(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_LazyDiscrTree(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_LitValues(builtin, 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

View file

@ -134,7 +134,6 @@ static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageC
LEAN_EXPORT lean_object* l_Lean_Meta_withAtLeastTransparency___rarg___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_withLocalDecls_loop___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_Meta_forallMetaTelescope(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6;
LEAN_EXPORT lean_object* l_Lean_Meta_getPostponed___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___rarg___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_Meta_processPostponed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -206,6 +205,7 @@ lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object
lean_object* l_Lean_Expr_bvar___override(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshLevelMVarsFor___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_DefEqCache_instances___default;
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalInstances___rarg___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_instMonadEnvMetaM___closed__3;
@ -305,7 +305,6 @@ static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageC
LEAN_EXPORT lean_object* l_Lean_Meta_isInductivePredicate___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_modifyInferTypeCache(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Cache_inferType___default;
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5;
static lean_object* l_Lean_Meta_instInhabitedCache___closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclD(lean_object*);
LEAN_EXPORT lean_object* l_Lean_FVarId_findDecl_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -408,7 +407,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_instMetaEvalMetaM(lean_object*);
lean_object* l_Lean_ppExprWithInfos(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___rarg___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalInstances___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3;
LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Cache_synthInstance___default___closed__6;
static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__3;
@ -423,6 +421,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallMetaTele
lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*);
lean_object* l_Lean_ConstantInfo_numLevelParams(lean_object*);
static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageCore___lambda__3___closed__1;
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mkLevelStuckErrorMessage(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_setPostponed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_orElse___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -451,7 +450,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_isReadOnlyExprMVar___boxed(lean_object*, le
LEAN_EXPORT lean_object* l_Lean_Meta_ParamInfo_isExplicit___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_isReadOnlyOrSyntheticOpaqueExprMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_isDefEqGuarded(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1;
LEAN_EXPORT lean_object* l_Lean_Meta_liftMkBindingM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5;
LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Meta_processPostponed___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getTransparency___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___closed__8;
@ -530,6 +531,7 @@ static lean_object* l_Lean_Meta_instInhabitedInfoCacheKey___closed__2;
static lean_object* l_Lean_Meta_DefEqCache_reducible___default___closed__3;
LEAN_EXPORT lean_object* l_Lean_Meta_fullApproxDefEq___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_io_mono_nanos_now(lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6;
LEAN_EXPORT lean_object* l_Lean_Meta_getTransparency(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp_process(lean_object*);
static lean_object* l_Lean_Meta_instAlternativeMetaM___closed__2;
@ -541,7 +543,6 @@ static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageC
static lean_object* l_Lean_Meta_instInhabitedCache___closed__3;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withExistingLocalDeclsImp(lean_object*);
static lean_object* l_Lean_Meta_liftMkBindingM___rarg___closed__3;
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2;
uint64_t l_Lean_Expr_hash(lean_object*);
uint8_t l_Lean_BinderInfo_isInstImplicit(uint8_t);
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclD___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -580,6 +581,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_approxDefEq___rarg___lambda__1(lean_object*
uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__4(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2;
LEAN_EXPORT lean_object* l_Lean_Meta_withoutProofIrrelevance___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withoutProofIrrelevance___rarg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getParamNames___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -618,9 +620,9 @@ lean_object* l_Lean_MetavarContext_MkBinding_elimMVarDeps(lean_object*, lean_obj
static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__5___closed__3;
static lean_object* l_Lean_Meta_processPostponed_loop___closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_ppExpr___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3;
LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsD(lean_object*);
static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__15;
LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922_(lean_object*);
LEAN_EXPORT 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_Lean_MVarId_isReadOnlyOrSyntheticOpaque(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -641,6 +643,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewFVar___
static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__16;
LEAN_EXPORT lean_object* l_Lean_Meta_approxDefEq___rarg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_withInstImplicitAsImplict___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getParamNames(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
size_t lean_usize_mod(size_t, size_t);
LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___spec__1___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_object*, lean_object*, lean_object*);
@ -664,6 +667,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescop
lean_object* l_Lean_Level_collectMVars(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Meta_withInstImplicitAsImplict___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_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_LocalDecl_isImplementationDetail(lean_object*);
static lean_object* l_Lean_Meta_Cache_funInfo___default___closed__1;
static lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___closed__10;
@ -676,6 +680,7 @@ double l_Float_ofScientific(lean_object*, uint8_t, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withAtLeastTransparency___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux_process(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_run_x27___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_isClassQuick_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_LocalDecl_userName(lean_object*);
static lean_object* l_Lean_Meta_State_postponed___default___closed__1;
@ -706,6 +711,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_resetZetaDeltaFVarIds(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp_process___rarg(lean_object*, uint8_t, 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_Meta_Cache_inferType___default___closed__1;
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mkFunUnit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withNewLocalInstances(lean_object*);
@ -740,6 +746,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_B
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_withNewLocalInstance___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getResetPostponed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046_(lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mapErrorImp(lean_object*);
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
@ -755,7 +762,9 @@ uint8_t lean_nat_dec_lt(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_qsort_sort___at_Lean_Meta_sortFVarIds___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_environment_main_module(lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7;
LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshExprMVar(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope_x27___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDepth___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_instOrElseMetaM(lean_object*);
@ -837,12 +846,10 @@ LEAN_EXPORT lean_object* l_Lean_Meta_processPostponed_loop___lambda__1(uint8_t,
LEAN_EXPORT lean_object* l_Lean_Meta_throwUnknownFVar(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewBinderInfosImp(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7;
lean_object* l_Lean_MetavarContext_setMVarType(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_throwIsDefEqStuck___rarg___closed__1;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg___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_Meta_InfoCacheKey_instHashableInfoCacheKey___boxed(lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_map2MetaM___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_shouldReduceAll___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_elimMVarDeps(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -965,6 +972,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_findMVarDecl_x3f___boxed(lean_object*, lean
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsD___spec__1___rarg(size_t, size_t, lean_object*);
static lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___spec__1___lambda__5___closed__1;
LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_liftMkBindingM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_processPostponed_loop___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getLocalDeclFromUserName___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_modifyPostponed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -1028,7 +1036,6 @@ LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDept
LEAN_EXPORT lean_object* l_Lean_Meta_withoutProofIrrelevance(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_mkConstWithFreshMVarLevels(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Lean_Meta_Config_quasiPatternApprox___default;
static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1;
lean_object* l_Lean_Expr_mvarId_x21(lean_object*);
static lean_object* l_Lean_Meta_Cache_synthInstance___default___closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_toIO___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -18567,6 +18574,206 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___rarg), 5, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(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; uint8_t x_9; lean_object* x_10;
x_8 = lean_box(0);
x_9 = 0;
x_10 = l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(x_9, x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7);
if (lean_obj_tag(x_10) == 0)
{
uint8_t x_11;
x_11 = !lean_is_exclusive(x_10);
if (x_11 == 0)
{
return x_10;
}
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;
}
}
else
{
uint8_t x_15;
x_15 = !lean_is_exclusive(x_10);
if (x_15 == 0)
{
return x_10;
}
else
{
lean_object* x_16; lean_object* x_17; lean_object* x_18;
x_16 = lean_ctor_get(x_10, 0);
x_17 = lean_ctor_get(x_10, 1);
lean_inc(x_17);
lean_inc(x_16);
lean_dec(x_10);
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_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg), 7, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope_x27___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_10; lean_object* x_11;
lean_inc(x_3);
x_10 = l_Lean_mkAppN(x_1, x_3);
lean_inc(x_8);
lean_inc(x_7);
lean_inc(x_6);
lean_inc(x_5);
x_11 = lean_apply_7(x_2, x_4, x_10, x_5, x_6, x_7, x_8, x_9);
if (lean_obj_tag(x_11) == 0)
{
lean_object* x_12; lean_object* x_13; uint8_t x_14; uint8_t x_15; uint8_t x_16; lean_object* x_17;
x_12 = lean_ctor_get(x_11, 0);
lean_inc(x_12);
x_13 = lean_ctor_get(x_11, 1);
lean_inc(x_13);
lean_dec(x_11);
x_14 = 0;
x_15 = 1;
x_16 = 1;
x_17 = l_Lean_Meta_mkLambdaFVars(x_3, x_12, x_14, x_15, x_16, x_5, x_6, x_7, x_8, x_13);
lean_dec(x_8);
lean_dec(x_7);
lean_dec(x_6);
lean_dec(x_5);
return x_17;
}
else
{
uint8_t x_18;
lean_dec(x_8);
lean_dec(x_7);
lean_dec(x_6);
lean_dec(x_5);
lean_dec(x_3);
x_18 = !lean_is_exclusive(x_11);
if (x_18 == 0)
{
return x_11;
}
else
{
lean_object* x_19; lean_object* x_20; lean_object* x_21;
x_19 = lean_ctor_get(x_11, 0);
x_20 = lean_ctor_get(x_11, 1);
lean_inc(x_20);
lean_inc(x_19);
lean_dec(x_11);
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;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope_x27(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_inc(x_6);
lean_inc(x_5);
lean_inc(x_4);
lean_inc(x_3);
lean_inc(x_2);
x_8 = lean_infer_type(x_2, x_3, x_4, x_5, x_6, x_7);
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, 0);
lean_inc(x_9);
x_10 = lean_ctor_get(x_8, 1);
lean_inc(x_10);
lean_dec(x_8);
x_11 = lean_alloc_closure((void*)(l_Lean_Meta_mapForallTelescope_x27___lambda__1), 9, 2);
lean_closure_set(x_11, 0, x_2);
lean_closure_set(x_11, 1, x_1);
x_12 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_9, x_11, x_3, x_4, x_5, x_6, x_10);
return x_12;
}
else
{
uint8_t x_13;
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_13 = !lean_is_exclusive(x_8);
if (x_13 == 0)
{
return x_8;
}
else
{
lean_object* x_14; lean_object* x_15; lean_object* x_16;
x_14 = lean_ctor_get(x_8, 0);
x_15 = lean_ctor_get(x_8, 1);
lean_inc(x_15);
lean_inc(x_14);
lean_dec(x_8);
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;
}
}
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope___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;
x_9 = lean_apply_6(x_1, x_3, x_4, x_5, x_6, x_7, x_8);
return x_9;
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope(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;
x_8 = lean_alloc_closure((void*)(l_Lean_Meta_mapForallTelescope___lambda__1___boxed), 8, 1);
lean_closure_set(x_8, 0, x_1);
x_9 = l_Lean_Meta_mapForallTelescope_x27(x_8, x_2, x_3, x_4, x_5, x_6, x_7);
return x_9;
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope___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) {
_start:
{
lean_object* x_9;
x_9 = l_Lean_Meta_mapForallTelescope___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8);
lean_dec(x_2);
return x_9;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingImp___rarg(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:
{
@ -39121,7 +39328,7 @@ lean_dec(x_3);
return x_9;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
@ -39131,73 +39338,73 @@ x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1;
x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__8;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2;
x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__3;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3;
x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__1;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4;
x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__12;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5;
x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1614____closed__14;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7() {
static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6;
x_2 = lean_unsigned_to_nat(14922u);
x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6;
x_2 = lean_unsigned_to_nat(15046u);
x_3 = l_Lean_Name_num___override(x_1, x_2);
return x_3;
}
}
LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922_(lean_object* x_1) {
LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046_(lean_object* x_1) {
_start:
{
lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5;
x_2 = l_Lean_Meta_processPostponed_loop___closed__3;
x_3 = 0;
x_4 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7;
x_4 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7;
x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1);
return x_5;
}
@ -39669,21 +39876,21 @@ l_Lean_Meta_checkpointDefEq___closed__1 = _init_l_Lean_Meta_checkpointDefEq___cl
lean_mark_persistent(l_Lean_Meta_checkpointDefEq___closed__1);
l_Lean_Meta_checkpointDefEq___closed__2 = _init_l_Lean_Meta_checkpointDefEq___closed__2();
lean_mark_persistent(l_Lean_Meta_checkpointDefEq___closed__2);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__1);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__2);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__3);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__4);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__5);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__6);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922____closed__7);
if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_14922_(lean_io_mk_world());
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__1);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__2);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__3);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__4);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__5);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__6);
l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7();
lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046____closed__7);
if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_15046_(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));

View file

@ -3821,7 +3821,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__2;
x_3 = lean_unsigned_to_nat(1671u);
x_3 = lean_unsigned_to_nat(1690u);
x_4 = lean_unsigned_to_nat(17u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -3850,7 +3850,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__5;
x_3 = lean_unsigned_to_nat(1682u);
x_3 = lean_unsigned_to_nat(1701u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__6;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -3879,7 +3879,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__8;
x_3 = lean_unsigned_to_nat(1633u);
x_3 = lean_unsigned_to_nat(1652u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__9;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -3908,7 +3908,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__11;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__12;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -3937,7 +3937,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__14;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__15;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -3966,7 +3966,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_Meta_Closure_collectExprAux___closed__1;
x_2 = l_Lean_Meta_Closure_collectExprAux___closed__17;
x_3 = lean_unsigned_to_nat(1737u);
x_3 = lean_unsigned_to_nat(1756u);
x_4 = lean_unsigned_to_nat(22u);
x_5 = l_Lean_Meta_Closure_collectExprAux___closed__18;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta.CompletionName
// Imports: Init Lean.Meta.Basic Lean.Meta.Match.MatcherInfo
// Imports: Lean.Meta.Basic Lean.Meta.Match.MatcherInfo
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -245,7 +245,6 @@ x_4 = lean_box(x_3);
return x_4;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_MatcherInfo(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
@ -253,9 +252,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Meta_CompletionName(uint8_t builtin, le
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Basic(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

View file

@ -113,6 +113,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at___private_Lean_
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_DiscrTree_getUnify___spec__4___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_DiscrTree_Trie_mapArraysM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux___at_Lean_Meta_DiscrTree_fold___spec__7___rarg(lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isRawNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_Trie_size(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_fold___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_binSearchAux___at_Lean_Meta_DiscrTree_getUnify_process___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -175,7 +176,6 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_DiscrTree_toAr
LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_instLTKey;
LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_isOffset(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_binSearchAux___at___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_getMatchLoop___spec__7___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_DiscrTree_getUnify___spec__2(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_getUnify___rarg___lambda__1(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_DiscrTree_Trie_foldValues(lean_object*, lean_object*);
@ -2392,7 +2392,7 @@ LEAN_EXPORT uint8_t l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_isNum
_start:
{
uint8_t x_2;
x_2 = l_Lean_Expr_isNatLit(x_1);
x_2 = l_Lean_Expr_isRawNatLit(x_1);
if (x_2 == 0)
{
lean_object* x_3; uint8_t x_4;

View file

@ -416,7 +416,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_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__1;
x_2 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__2;
x_3 = lean_unsigned_to_nat(1633u);
x_3 = lean_unsigned_to_nat(1652u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -594,7 +594,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_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__1;
x_2 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__8___closed__1;
x_3 = lean_unsigned_to_nat(1737u);
x_3 = lean_unsigned_to_nat(1756u);
x_4 = lean_unsigned_to_nat(22u);
x_5 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__8___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -795,7 +795,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_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__1;
x_2 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__10___closed__1;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__10___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -919,7 +919,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_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__3___closed__1;
x_2 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__11___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l___private_Lean_Meta_ExprLens_0__Lean_Meta_lensCoord___rarg___lambda__11___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -70,6 +70,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_throwIncorrectNumberOfLevels(lean_object*);
lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Expr_bvar___override(lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Expr_instantiateBetaRevRange___closed__1;
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_InferType_0__Lean_Meta_withLocalDecl_x27___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -159,7 +160,6 @@ lean_object* lean_expr_consume_type_annotations(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_isTypeFormerType_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t lean_expr_equal(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Expr_instantiateBetaRevRange_visit___spec__5(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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___private_Lean_Meta_InferType_0__Lean_Meta_isArrowType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_throwFunctionExpected___rarg___closed__1;
@ -179,7 +179,6 @@ extern lean_object* l_Lean_ExprStructEq_instBEqExprStructEq;
LEAN_EXPORT lean_object* l_Lean_AssocList_contains___at_Lean_Expr_instantiateBetaRevRange_visit___spec__4___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Expr_instantiateBetaRevRange___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_InferType_0__Lean_Meta_inferFVarType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_throwUnknownMVar___rarg___closed__4;
LEAN_EXPORT lean_object* l_Lean_Meta_inferTypeImp_infer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___closed__1;
@ -253,7 +252,6 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Meta_InferTy
static lean_object* l_Lean_Meta_throwUnknownMVar___rarg___closed__3;
LEAN_EXPORT lean_object* l___private_Lean_Meta_InferType_0__Lean_Meta_isTypeQuickApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_get_size(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2(lean_object*);
LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_InferType_0__Lean_Meta_checkInferTypeCache___spec__4(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_throwUnknownMVar___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -4550,67 +4548,6 @@ return x_30;
}
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(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; uint8_t x_9; lean_object* x_10;
x_8 = lean_box(0);
x_9 = 0;
x_10 = l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(x_9, x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7);
if (lean_obj_tag(x_10) == 0)
{
uint8_t x_11;
x_11 = !lean_is_exclusive(x_10);
if (x_11 == 0)
{
return x_10;
}
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;
}
}
else
{
uint8_t x_15;
x_15 = !lean_is_exclusive(x_10);
if (x_15 == 0)
{
return x_10;
}
else
{
lean_object* x_16; lean_object* x_17; lean_object* x_18;
x_16 = lean_ctor_get(x_10, 0);
x_17 = lean_ctor_get(x_10, 1);
lean_inc(x_17);
lean_inc(x_16);
lean_dec(x_10);
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_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg), 7, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___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:
{
@ -4833,7 +4770,7 @@ _start:
{
lean_object* x_7; lean_object* x_8;
x_7 = l___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___closed__1;
x_8 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6);
x_8 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6);
return x_8;
}
}
@ -8039,7 +7976,7 @@ lean_free_object(x_305);
x_312 = l___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___closed__1;
lean_inc(x_3);
lean_inc(x_1);
x_313 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_1, x_312, x_2, x_3, x_4, x_5, x_308);
x_313 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_1, x_312, x_2, x_3, x_4, x_5, x_308);
if (lean_obj_tag(x_313) == 0)
{
uint8_t x_314;
@ -8442,7 +8379,7 @@ lean_object* x_403; lean_object* x_404;
x_403 = l___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___closed__1;
lean_inc(x_3);
lean_inc(x_1);
x_404 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_1, x_403, x_2, x_3, x_4, x_5, x_399);
x_404 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_1, x_403, x_2, x_3, x_4, x_5, x_399);
if (lean_obj_tag(x_404) == 0)
{
lean_object* x_405; lean_object* x_406; lean_object* x_407; uint8_t x_408;

View file

@ -59,6 +59,7 @@ LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Meta_mkInjectiveTheorems___
static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Meta_mkInjectiveTheorems___spec__7___rarg___closed__2;
lean_object* l_Lean_replaceRef(lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Injective_0__Lean_Meta_mkInjectiveEqTheoremValue___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkInjectiveTheorems___spec__2___closed__2;
lean_object* l_Lean_Expr_fvarId_x21(lean_object*);
@ -167,7 +168,6 @@ LEAN_EXPORT lean_object* l_Lean_getConstInfoCtor___at_Lean_Meta_mkInjectiveTheor
static lean_object* l_Lean_withTraceNode___at_Lean_Meta_mkInjectiveTheorems___spec__5___lambda__3___closed__5;
uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*);
extern lean_object* l_Lean_Meta_simpExtension;
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Meta_mkInjectiveTheorems___spec__7___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Meta_mkInjectiveTheorems___spec__5___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*);
@ -2084,7 +2084,7 @@ lean_closure_set(x_13, 2, x_5);
lean_closure_set(x_13, 3, x_12);
lean_closure_set(x_13, 4, x_4);
lean_closure_set(x_13, 5, x_6);
x_14 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_6, x_13, x_7, x_8, x_9, x_10, x_11);
x_14 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_6, x_13, x_7, x_8, x_9, x_10, x_11);
return x_14;
}
}

15392
stage0/stdlib/Lean/Meta/LazyDiscrTree.c generated Normal file

File diff suppressed because it is too large Load diff

4445
stage0/stdlib/Lean/Meta/LitValues.c generated Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,33 @@
// Lean compiler output
// Module: Lean.Meta.Match.MatcherApp
// Imports: Lean.Meta.Match.MatcherApp.Basic Lean.Meta.Match.MatcherApp.Transform
#include <lean/lean.h>
#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* initialize_Lean_Meta_Match_MatcherApp_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Match_MatcherApp_Transform(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Meta_Match_MatcherApp(uint8_t builtin, lean_object* w) {
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Lean_Meta_Match_MatcherApp_Basic(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Match_MatcherApp_Transform(builtin, 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
}
#endif

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -28,13 +28,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_reduce_visit(uint8_t, uint8_t, uint8_t, lea
lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
extern lean_object* l_Lean_maxRecDepthErrorMessage;
LEAN_EXPORT lean_object* l_Lean_Meta_reduce_visit___lambda__4(lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isRawNatLit(lean_object*);
lean_object* l_Lean_Expr_sort___override(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_reduce_visit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_mk_array(lean_object*, lean_object*);
lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_reduce_visit___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_Meta_reduce_visit___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Meta_reduce_visit___spec__12(lean_object*, lean_object*);
@ -1643,7 +1643,7 @@ if (x_70 == 0)
lean_object* x_71; lean_object* x_72; uint8_t x_73;
x_71 = l_Lean_instInhabitedExpr;
x_72 = l___private_Init_Util_0__outOfBounds___rarg(x_71);
x_73 = l_Lean_Expr_isNatLit(x_72);
x_73 = l_Lean_Expr_isRawNatLit(x_72);
lean_dec(x_72);
if (x_73 == 0)
{
@ -1668,7 +1668,7 @@ else
{
lean_object* x_76; uint8_t x_77;
x_76 = lean_array_fget(x_34, x_21);
x_77 = l_Lean_Expr_isNatLit(x_76);
x_77 = l_Lean_Expr_isRawNatLit(x_76);
lean_dec(x_76);
if (x_77 == 0)
{
@ -1885,7 +1885,7 @@ if (x_131 == 0)
lean_object* x_132; lean_object* x_133; uint8_t x_134;
x_132 = l_Lean_instInhabitedExpr;
x_133 = l___private_Init_Util_0__outOfBounds___rarg(x_132);
x_134 = l_Lean_Expr_isNatLit(x_133);
x_134 = l_Lean_Expr_isRawNatLit(x_133);
lean_dec(x_133);
if (x_134 == 0)
{
@ -1910,7 +1910,7 @@ else
{
lean_object* x_138; uint8_t x_139;
x_138 = lean_array_fget(x_93, x_21);
x_139 = l_Lean_Expr_isNatLit(x_138);
x_139 = l_Lean_Expr_isRawNatLit(x_138);
lean_dec(x_138);
if (x_139 == 0)
{

View file

@ -143,6 +143,7 @@ lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object
lean_object* l_Lean_Expr_bvar___override(lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_SynthInstance_mkTableKey___rarg___lambda__1___boxed(lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*);
static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SynthInstance_getInstances___spec__7___closed__3;
static lean_object* l_Lean_Meta_synthInstance_x3f_assignOutParams___closed__3;
@ -416,7 +417,6 @@ static lean_object* l_Lean_Meta_SynthInstance_resume___lambda__1___closed__3;
static lean_object* l_Lean_Meta_synthInstance_x3f_assignOutParams___closed__4;
LEAN_EXPORT lean_object* l___private_Lean_Meta_SynthInstance_0__Lean_Meta_SynthInstance_removeUnusedArguments_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_SynthInstance___hyg_6____closed__4;
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_SynthInstance_State_tableEntries___default___spec__1(lean_object*);
static lean_object* l_Lean_Meta_SynthInstance_mkTableKeyFor___closed__1;
lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -13486,7 +13486,7 @@ lean_free_object(x_10);
lean_inc(x_12);
x_16 = lean_alloc_closure((void*)(l___private_Lean_Meta_SynthInstance_0__Lean_Meta_SynthInstance_removeUnusedArguments_x3f___lambda__3), 8, 1);
lean_closure_set(x_16, 0, x_12);
x_17 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_12, x_16, x_2, x_3, x_4, x_5, x_13);
x_17 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_12, x_16, x_2, x_3, x_4, x_5, x_13);
return x_17;
}
}
@ -13519,7 +13519,7 @@ lean_object* x_23; lean_object* x_24;
lean_inc(x_18);
x_23 = lean_alloc_closure((void*)(l___private_Lean_Meta_SynthInstance_0__Lean_Meta_SynthInstance_removeUnusedArguments_x3f___lambda__3), 8, 1);
lean_closure_set(x_23, 0, x_18);
x_24 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_18, x_23, x_2, x_3, x_4, x_5, x_19);
x_24 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_18, x_23, x_2, x_3, x_4, x_5, x_19);
return x_24;
}
}
@ -21330,7 +21330,7 @@ lean_object* x_7; lean_object* x_8;
lean_inc(x_1);
x_7 = lean_alloc_closure((void*)(l___private_Lean_Meta_SynthInstance_0__Lean_Meta_preprocessOutParam___lambda__1), 8, 1);
lean_closure_set(x_7, 0, x_1);
x_8 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6);
x_8 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6);
return x_8;
}
}

View file

@ -24,13 +24,13 @@ lean_object* l_Lean_MVarId_checkNotAssigned(lean_object*, lean_object*, lean_obj
lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_matchEqHEq_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isRawNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_getCtorNumPropFields___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_push(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_injectionCore___lambda__1___closed__10;
static lean_object* l_Lean_Meta_injectionCore___closed__2;
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_MVarId_getTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isNatLit(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*);
LEAN_EXPORT lean_object* l_Lean_Meta_getCtorNumPropFields(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_injections_go___closed__1;
@ -3278,7 +3278,7 @@ if (lean_is_exclusive(x_35)) {
lean_dec_ref(x_35);
x_38 = lean_box(0);
}
x_89 = l_Lean_Expr_isNatLit(x_33);
x_89 = l_Lean_Expr_isRawNatLit(x_33);
lean_dec(x_33);
if (x_89 == 0)
{
@ -3291,7 +3291,7 @@ goto block_88;
else
{
uint8_t x_91;
x_91 = l_Lean_Expr_isNatLit(x_36);
x_91 = l_Lean_Expr_isRawNatLit(x_36);
lean_dec(x_36);
if (x_91 == 0)
{

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta.Tactic.NormCast
// Imports: Init Lean.Meta.CongrTheorems Lean.Meta.Tactic.Simp.SimpTheorems Lean.Meta.CoeAttr
// Imports: Lean.Meta.CongrTheorems Lean.Meta.Tactic.Simp.SimpTheorems Lean.Meta.CoeAttr
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -4143,7 +4143,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_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__3;
x_2 = l_Lean_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__4;
x_3 = lean_unsigned_to_nat(160u);
x_3 = lean_unsigned_to_nat(161u);
x_4 = lean_unsigned_to_nat(11u);
x_5 = l_Lean_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__5;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -4410,7 +4410,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_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__3;
x_2 = l_Lean_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__4;
x_3 = lean_unsigned_to_nat(153u);
x_3 = lean_unsigned_to_nat(154u);
x_4 = lean_unsigned_to_nat(71u);
x_5 = l_Lean_Meta_NormCast_initFn____x40_Lean_Meta_Tactic_NormCast___hyg_1997____lambda__1___closed__5;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -5555,7 +5555,6 @@ lean_dec(x_1);
return x_5;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_CongrTheorems(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Simp_SimpTheorems(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_CoeAttr(uint8_t builtin, lean_object*);
@ -5564,9 +5563,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_NormCast(uint8_t builtin, l
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_CongrTheorems(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta.Tactic.Simp.BuiltinSimprocs.String
// Imports: Init Lean.ToExpr Lean.Meta.Tactic.Simp.BuiltinSimprocs.Char
// Imports: Lean.ToExpr Lean.Meta.Tactic.Simp.BuiltinSimprocs.Char
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -13,124 +13,96 @@
#ifdef __cplusplus
extern "C" {
#endif
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7;
lean_object* l_Lean_Meta_getCharValue_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__3;
lean_object* lean_mk_empty_array_with_capacity(lean_object*);
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426_(lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6;
LEAN_EXPORT lean_object* l_String_reduceMk___lambda__1(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_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4;
uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228_(lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171_(lean_object*);
lean_object* lean_array_push(lean_object*, lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1;
lean_object* l_Char_fromExpr_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5;
LEAN_EXPORT lean_object* l_String_fromExpr_x3f___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_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14;
LEAN_EXPORT lean_object* l_String_fromExpr_x3f(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_BuiltinSimprocs_String_0__String_reduceListChar___closed__8;
lean_object* l_Lean_stringToMessageData(lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_430_(lean_object*);
lean_object* lean_string_push(lean_object*, uint32_t);
lean_object* l_Lean_Expr_appArg_x21(lean_object*);
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_428_(lean_object*);
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__2;
lean_object* l_Lean_Meta_getStringValue_x3f(lean_object*);
lean_object* l_Lean_mkStrLit(lean_object*);
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4;
extern lean_object* l_Lean_Meta_Simp_builtinSimprocsRef;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__5;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226_(lean_object*);
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2;
static lean_object* l_String_reduceMk___closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__6;
LEAN_EXPORT lean_object* l_String_reduceAppend___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_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__4;
lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___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___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_481_(lean_object*);
LEAN_EXPORT lean_object* l_String_reduceAppend___lambda__1(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_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__7;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11;
lean_object* l_Lean_Name_str___override(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_String_reduceAppend(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9;
lean_object* l_Lean_Expr_appFn_x21(lean_object*);
static lean_object* l_String_reduceAppend___closed__3;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15;
static lean_object* l_String_reduceAppend___lambda__1___closed__1;
lean_object* l_Lean_MessageData_ofExpr(lean_object*);
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__5;
LEAN_EXPORT lean_object* l_String_reduceMk(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_BuiltinSimprocs_String_0__String_reduceListChar___closed__4;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175_(lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1;
lean_object* l_Lean_Meta_Simp_registerBuiltinSimproc(lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__9;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12;
lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*);
lean_object* l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224_(lean_object*);
static lean_object* l_String_reduceAppend___closed__2;
LEAN_EXPORT lean_object* l_String_reduceMk___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___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479_(lean_object*);
lean_object* l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___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___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_483_(lean_object*);
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1;
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173_(lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___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_string_append(lean_object*, lean_object*);
extern lean_object* l_Lean_Meta_Simp_builtinSEvalprocsRef;
static lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___closed__3;
static lean_object* l_String_reduceAppend___closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15;
static lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__2;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar(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_String_reduceMk___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_String_reduceMk___closed__2;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1;
static lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1;
LEAN_EXPORT lean_object* l_String_fromExpr_x3f(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:
{
if (lean_obj_tag(x_1) == 9)
{
lean_object* x_10;
x_10 = lean_ctor_get(x_1, 0);
if (lean_obj_tag(x_10) == 0)
{
lean_object* x_11; lean_object* x_12;
x_11 = lean_box(0);
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
{
lean_object* x_13; lean_object* x_14; lean_object* x_15;
x_13 = lean_ctor_get(x_10, 0);
lean_inc(x_13);
x_14 = lean_alloc_ctor(1, 1, 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_9);
return x_15;
}
}
else
{
lean_object* x_16; lean_object* x_17;
x_16 = lean_box(0);
x_17 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_17, 0, x_16);
lean_ctor_set(x_17, 1, x_9);
return x_17;
}
lean_object* x_10; lean_object* x_11;
x_10 = l_Lean_Meta_getStringValue_x3f(x_1);
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;
}
}
LEAN_EXPORT lean_object* l_String_fromExpr_x3f___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) {
@ -381,7 +353,7 @@ lean_dec(x_2);
return x_11;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1() {
_start:
{
lean_object* x_1;
@ -389,7 +361,7 @@ x_1 = lean_mk_string_from_bytes("String", 6);
return x_1;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2() {
_start:
{
lean_object* x_1;
@ -397,17 +369,17 @@ x_1 = lean_mk_string_from_bytes("reduceAppend", 12);
return x_1;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2;
x_3 = l_Lean_Name_mkStr2(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
@ -419,21 +391,21 @@ lean_ctor_set(x_3, 1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = lean_box(0);
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1;
x_3 = l_Lean_Name_str___override(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5;
x_2 = lean_unsigned_to_nat(0u);
x_3 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_3, 0, x_1);
@ -441,7 +413,7 @@ lean_ctor_set(x_3, 1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7() {
_start:
{
lean_object* x_1; lean_object* x_2;
@ -450,77 +422,77 @@ x_2 = lean_mk_empty_array_with_capacity(x_1);
return x_2;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4;
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6;
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6;
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6;
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11;
x_2 = lean_box(3);
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12;
x_2 = lean_box(3);
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13;
x_2 = lean_box(3);
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15() {
_start:
{
lean_object* x_1;
@ -528,18 +500,18 @@ x_1 = lean_alloc_closure((void*)(l_String_reduceAppend), 9, 0);
return x_1;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14;
x_4 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14;
x_4 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15;
x_5 = l_Lean_Meta_Simp_registerBuiltinSimproc(x_2, x_3, x_4, x_1);
return x_5;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1() {
_start:
{
lean_object* x_1;
@ -547,19 +519,19 @@ x_1 = l_Lean_Meta_Simp_builtinSimprocsRef;
return x_1;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3;
x_4 = 1;
x_5 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15;
x_5 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15;
x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1);
return x_6;
}
}
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1() {
static lean_object* _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1() {
_start:
{
lean_object* x_1;
@ -567,14 +539,14 @@ x_1 = l_Lean_Meta_Simp_builtinSEvalprocsRef;
return x_1;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1;
x_3 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3;
x_4 = 1;
x_5 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15;
x_5 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15;
x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1);
return x_6;
}
@ -665,7 +637,8 @@ lean_dec(x_20);
lean_inc(x_10);
lean_inc(x_9);
lean_inc(x_8);
x_22 = l_Char_fromExpr_x3f(x_21, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11);
lean_inc(x_7);
x_22 = l_Lean_Meta_getCharValue_x3f(x_21, x_7, x_8, x_9, x_10, x_11);
lean_dec(x_21);
if (lean_obj_tag(x_22) == 0)
{
@ -941,7 +914,7 @@ static lean_object* _init_l_String_reduceMk___closed__2() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1;
x_2 = l_String_reduceMk___closed__1;
x_3 = l_Lean_Name_mkStr2(x_1, x_2);
return x_3;
@ -998,7 +971,7 @@ lean_dec(x_1);
return x_10;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1() {
_start:
{
lean_object* x_1;
@ -1006,17 +979,17 @@ x_1 = lean_mk_string_from_bytes("reduceMk", 8);
return x_1;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1;
x_1 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1;
x_3 = l_Lean_Name_mkStr2(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
@ -1028,7 +1001,7 @@ lean_ctor_set(x_3, 1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4() {
_start:
{
lean_object* x_1; lean_object* x_2;
@ -1037,27 +1010,27 @@ x_2 = lean_mk_empty_array_with_capacity(x_1);
return x_2;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3;
x_1 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3;
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5;
x_1 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5;
x_2 = lean_box(3);
x_3 = lean_array_push(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7() {
static lean_object* _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7() {
_start:
{
lean_object* x_1;
@ -1065,42 +1038,41 @@ x_1 = lean_alloc_closure((void*)(l_String_reduceMk___boxed), 9, 0);
return x_1;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6;
x_4 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7;
x_2 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6;
x_4 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7;
x_5 = l_Lean_Meta_Simp_registerBuiltinSimproc(x_2, x_3, x_4, x_1);
return x_5;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_481_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_428_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2;
x_4 = 1;
x_5 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7;
x_5 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7;
x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1);
return x_6;
}
}
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_483_(lean_object* x_1) {
LEAN_EXPORT lean_object* l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_430_(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2;
x_2 = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1;
x_3 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2;
x_4 = 1;
x_5 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7;
x_5 = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7;
x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1);
return x_6;
}
}
lean_object* initialize_Init(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_ToExpr(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Simp_BuiltinSimprocs_Char(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
@ -1108,9 +1080,6 @@ LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Init(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_ToExpr(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
@ -1125,47 +1094,47 @@ l_String_reduceAppend___closed__2 = _init_l_String_reduceAppend___closed__2();
lean_mark_persistent(l_String_reduceAppend___closed__2);
l_String_reduceAppend___closed__3 = _init_l_String_reduceAppend___closed__3();
lean_mark_persistent(l_String_reduceAppend___closed__3);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__1);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__2);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__3);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__4);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__5);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__6);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__7);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__8);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__9);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__10);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__11);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__12);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__13);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__14);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224____closed__15);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_224_(lean_io_mk_world());
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__1);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__2);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__3);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__4);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__5);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__6);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__7);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__8);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__9);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__10);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__11);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__12);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__13);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__14);
l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171____closed__15);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_171_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226____closed__1);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_226_(lean_io_mk_world());
}l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173____closed__1);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_173_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228____closed__1);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_228_(lean_io_mk_world());
}l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1 = _init_l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175____closed__1);
if (builtin) {res = l___regBuiltin_String_reduceAppend_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_175_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__1 = _init_l___private_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String_0__String_reduceListChar___lambda__1___closed__1();
@ -1200,27 +1169,27 @@ l_String_reduceMk___closed__1 = _init_l_String_reduceMk___closed__1();
lean_mark_persistent(l_String_reduceMk___closed__1);
l_String_reduceMk___closed__2 = _init_l_String_reduceMk___closed__2();
lean_mark_persistent(l_String_reduceMk___closed__2);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__1);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__2);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__3);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__4);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__5);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__6);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479____closed__7);
if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_479_(lean_io_mk_world());
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__1);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__2);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__3);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__4);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__5);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__6);
l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7 = _init_l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7();
lean_mark_persistent(l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426____closed__7);
if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_426_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_481_(lean_io_mk_world());
}if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_428_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_483_(lean_io_mk_world());
}if (builtin) {res = l___regBuiltin_String_reduceMk_declare____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_String___hyg_430_(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));

File diff suppressed because one or more lines are too long

View file

@ -103,6 +103,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_applySimpResultToFVarId(lean_object*, lean_
uint8_t l_Lean_Expr_isLet(lean_object*);
uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Main_0__Lean_Meta_Simp_reduceStep___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*);
uint8_t l_Lean_Expr_isRawNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_simpTargetCore___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Simp_main___closed__1;
LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Config_updateArith___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
@ -167,7 +168,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_dsimpGoal___spe
lean_object* lean_environment_find(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_Simp_simpLet___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_throwNestedTacticEx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Lean_Expr_isNatLit(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Simp_simpProj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_simpProj___spec__15(lean_object*, lean_object*, size_t, size_t);
LEAN_EXPORT lean_object* l_Lean_Meta_Simp_simpApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -453,6 +453,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_congr(lean_object*, lean_object*, lean
uint8_t l_Lean_Expr_isConstructorApp(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Simp_simpArrow___lambda__4___closed__2;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Main_0__Lean_Meta_Simp_unfold_x3f___lambda__1(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_LocalDecl_isImplementationDetail(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Simp_visitFn___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_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Simp_simpArrow___lambda__4___closed__10;
@ -1080,7 +1081,7 @@ lean_object* x_6; lean_object* x_7; uint8_t x_8;
x_6 = l_Lean_Expr_appFn_x21(x_1);
x_7 = l_Lean_Expr_appArg_x21(x_6);
lean_dec(x_6);
x_8 = l_Lean_Expr_isNatLit(x_7);
x_8 = l_Lean_Expr_isRawNatLit(x_7);
lean_dec(x_7);
return x_8;
}
@ -2845,42 +2846,43 @@ return x_11;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_Main_0__Lean_Meta_Simp_reduceFVar(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:
{
uint8_t x_9;
x_9 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 16);
if (x_9 == 0)
{
lean_object* x_10; uint8_t x_11;
lean_object* x_9;
lean_inc(x_3);
x_10 = l_Lean_Expr_fvarId_x21(x_3);
x_11 = l_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold(x_2, x_10);
x_9 = l_Lean_Meta_getFVarLocalDecl(x_3, x_4, x_5, x_6, x_7, x_8);
if (lean_obj_tag(x_9) == 0)
{
uint8_t x_10;
x_10 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 16);
if (x_10 == 0)
{
uint8_t x_11;
x_11 = !lean_is_exclusive(x_9);
if (x_11 == 0)
{
lean_object* x_12;
lean_dec(x_4);
x_12 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_12, 0, x_3);
lean_ctor_set(x_12, 1, x_8);
return x_12;
lean_object* x_12; lean_object* x_13; uint8_t x_14;
x_12 = lean_ctor_get(x_9, 0);
lean_inc(x_3);
x_13 = l_Lean_Expr_fvarId_x21(x_3);
x_14 = l_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold(x_2, x_13);
if (x_14 == 0)
{
uint8_t x_15;
x_15 = l_Lean_LocalDecl_isImplementationDetail(x_12);
if (x_15 == 0)
{
lean_dec(x_12);
lean_ctor_set(x_9, 0, x_3);
return x_9;
}
else
{
lean_object* x_13;
lean_inc(x_3);
x_13 = l_Lean_Meta_getFVarLocalDecl(x_3, x_4, x_5, x_6, x_7, x_8);
if (lean_obj_tag(x_13) == 0)
{
uint8_t x_14;
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 = l_Lean_LocalDecl_value_x3f(x_15);
lean_dec(x_15);
lean_object* x_16;
x_16 = l_Lean_LocalDecl_value_x3f(x_12);
lean_dec(x_12);
if (lean_obj_tag(x_16) == 0)
{
lean_ctor_set(x_13, 0, x_3);
return x_13;
lean_ctor_set(x_9, 0, x_3);
return x_9;
}
else
{
@ -2889,153 +2891,194 @@ lean_dec(x_3);
x_17 = lean_ctor_get(x_16, 0);
lean_inc(x_17);
lean_dec(x_16);
lean_ctor_set(x_13, 0, x_17);
return x_13;
lean_ctor_set(x_9, 0, x_17);
return x_9;
}
}
}
else
{
lean_object* x_18; lean_object* x_19; lean_object* x_20;
x_18 = lean_ctor_get(x_13, 0);
x_19 = lean_ctor_get(x_13, 1);
lean_inc(x_19);
lean_inc(x_18);
lean_dec(x_13);
x_20 = l_Lean_LocalDecl_value_x3f(x_18);
lean_dec(x_18);
if (lean_obj_tag(x_20) == 0)
lean_object* x_18;
x_18 = l_Lean_LocalDecl_value_x3f(x_12);
lean_dec(x_12);
if (lean_obj_tag(x_18) == 0)
{
lean_object* x_21;
x_21 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_21, 0, x_3);
lean_ctor_set(x_21, 1, x_19);
return x_21;
lean_ctor_set(x_9, 0, x_3);
return x_9;
}
else
{
lean_object* x_22; lean_object* x_23;
lean_object* x_19;
lean_dec(x_3);
x_22 = lean_ctor_get(x_20, 0);
lean_inc(x_22);
lean_dec(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;
x_19 = lean_ctor_get(x_18, 0);
lean_inc(x_19);
lean_dec(x_18);
lean_ctor_set(x_9, 0, x_19);
return x_9;
}
}
}
else
{
lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23;
x_20 = lean_ctor_get(x_9, 0);
x_21 = lean_ctor_get(x_9, 1);
lean_inc(x_21);
lean_inc(x_20);
lean_dec(x_9);
lean_inc(x_3);
x_22 = l_Lean_Expr_fvarId_x21(x_3);
x_23 = l_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold(x_2, x_22);
if (x_23 == 0)
{
uint8_t x_24;
lean_dec(x_3);
x_24 = !lean_is_exclusive(x_13);
x_24 = l_Lean_LocalDecl_isImplementationDetail(x_20);
if (x_24 == 0)
{
return x_13;
lean_object* x_25;
lean_dec(x_20);
x_25 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_25, 0, x_3);
lean_ctor_set(x_25, 1, x_21);
return x_25;
}
else
{
lean_object* x_25; lean_object* x_26; lean_object* x_27;
x_25 = lean_ctor_get(x_13, 0);
x_26 = lean_ctor_get(x_13, 1);
lean_inc(x_26);
lean_inc(x_25);
lean_dec(x_13);
x_27 = lean_alloc_ctor(1, 2, 0);
lean_ctor_set(x_27, 0, x_25);
lean_ctor_set(x_27, 1, x_26);
lean_object* x_26;
x_26 = l_Lean_LocalDecl_value_x3f(x_20);
lean_dec(x_20);
if (lean_obj_tag(x_26) == 0)
{
lean_object* x_27;
x_27 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_27, 0, x_3);
lean_ctor_set(x_27, 1, x_21);
return x_27;
}
}
}
}
else
{
lean_object* x_28;
lean_dec(x_2);
lean_inc(x_3);
x_28 = l_Lean_Meta_getFVarLocalDecl(x_3, x_4, x_5, x_6, x_7, x_8);
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;
x_30 = lean_ctor_get(x_28, 0);
x_31 = l_Lean_LocalDecl_value_x3f(x_30);
lean_dec(x_30);
if (lean_obj_tag(x_31) == 0)
{
lean_ctor_set(x_28, 0, x_3);
return x_28;
}
else
{
lean_object* x_32;
lean_object* x_28; lean_object* x_29;
lean_dec(x_3);
x_32 = lean_ctor_get(x_31, 0);
x_28 = lean_ctor_get(x_26, 0);
lean_inc(x_28);
lean_dec(x_26);
x_29 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_29, 0, x_28);
lean_ctor_set(x_29, 1, x_21);
return x_29;
}
}
}
else
{
lean_object* x_30;
x_30 = l_Lean_LocalDecl_value_x3f(x_20);
lean_dec(x_20);
if (lean_obj_tag(x_30) == 0)
{
lean_object* x_31;
x_31 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_31, 0, x_3);
lean_ctor_set(x_31, 1, x_21);
return x_31;
}
else
{
lean_object* x_32; lean_object* x_33;
lean_dec(x_3);
x_32 = lean_ctor_get(x_30, 0);
lean_inc(x_32);
lean_dec(x_31);
lean_ctor_set(x_28, 0, x_32);
return x_28;
lean_dec(x_30);
x_33 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_33, 0, x_32);
lean_ctor_set(x_33, 1, x_21);
return x_33;
}
}
}
}
else
{
lean_object* x_33; lean_object* x_34; lean_object* x_35;
x_33 = lean_ctor_get(x_28, 0);
x_34 = lean_ctor_get(x_28, 1);
lean_inc(x_34);
lean_inc(x_33);
lean_dec(x_28);
x_35 = l_Lean_LocalDecl_value_x3f(x_33);
lean_dec(x_33);
if (lean_obj_tag(x_35) == 0)
uint8_t x_34;
lean_dec(x_2);
x_34 = !lean_is_exclusive(x_9);
if (x_34 == 0)
{
lean_object* x_36;
x_36 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_36, 0, x_3);
lean_ctor_set(x_36, 1, x_34);
return x_36;
}
else
{
lean_object* x_37; lean_object* x_38;
lean_dec(x_3);
x_37 = lean_ctor_get(x_35, 0);
lean_inc(x_37);
lean_object* x_35; lean_object* x_36;
x_35 = lean_ctor_get(x_9, 0);
x_36 = l_Lean_LocalDecl_value_x3f(x_35);
lean_dec(x_35);
x_38 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_38, 0, x_37);
lean_ctor_set(x_38, 1, x_34);
return x_38;
}
}
if (lean_obj_tag(x_36) == 0)
{
lean_ctor_set(x_9, 0, x_3);
return x_9;
}
else
{
uint8_t x_39;
lean_object* x_37;
lean_dec(x_3);
x_39 = !lean_is_exclusive(x_28);
if (x_39 == 0)
{
return x_28;
x_37 = lean_ctor_get(x_36, 0);
lean_inc(x_37);
lean_dec(x_36);
lean_ctor_set(x_9, 0, x_37);
return x_9;
}
}
else
{
lean_object* x_40; lean_object* x_41; lean_object* x_42;
x_40 = lean_ctor_get(x_28, 0);
x_41 = lean_ctor_get(x_28, 1);
lean_inc(x_41);
lean_inc(x_40);
lean_dec(x_28);
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;
lean_object* x_38; lean_object* x_39; lean_object* x_40;
x_38 = lean_ctor_get(x_9, 0);
x_39 = lean_ctor_get(x_9, 1);
lean_inc(x_39);
lean_inc(x_38);
lean_dec(x_9);
x_40 = l_Lean_LocalDecl_value_x3f(x_38);
lean_dec(x_38);
if (lean_obj_tag(x_40) == 0)
{
lean_object* x_41;
x_41 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_41, 0, x_3);
lean_ctor_set(x_41, 1, x_39);
return x_41;
}
else
{
lean_object* x_42; lean_object* x_43;
lean_dec(x_3);
x_42 = lean_ctor_get(x_40, 0);
lean_inc(x_42);
lean_dec(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_39);
return x_43;
}
}
}
}
else
{
uint8_t x_44;
lean_dec(x_3);
lean_dec(x_2);
x_44 = !lean_is_exclusive(x_9);
if (x_44 == 0)
{
return x_9;
}
else
{
lean_object* x_45; lean_object* x_46; lean_object* x_47;
x_45 = lean_ctor_get(x_9, 0);
x_46 = lean_ctor_get(x_9, 1);
lean_inc(x_46);
lean_inc(x_45);
lean_dec(x_9);
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;
}
}
}
@ -10047,7 +10090,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_Meta_Simp_simpProj___lambda__1___closed__2;
x_2 = l_Lean_Meta_Simp_simpProj___lambda__1___closed__3;
x_3 = lean_unsigned_to_nat(1682u);
x_3 = lean_unsigned_to_nat(1701u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Meta_Simp_simpProj___lambda__1___closed__4;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -11957,7 +12000,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_Meta_Simp_simpProj___lambda__1___closed__2;
x_2 = l_Lean_Meta_Simp_simpArrow___lambda__1___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_Meta_Simp_simpArrow___lambda__1___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -16742,7 +16742,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_Meta_SimpTheorem_getValue___closed__1;
x_2 = l_Lean_Meta_SimpTheorem_getValue___closed__2;
x_3 = lean_unsigned_to_nat(1649u);
x_3 = lean_unsigned_to_nat(1668u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Meta_SimpTheorem_getValue___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -5973,7 +5973,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_Meta_Simp_mkImpCongr___closed__1;
x_2 = l_Lean_Meta_Simp_mkImpCongr___closed__2;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_Meta_Simp_mkImpCongr___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta.Tactic.Split
// Imports: Lean.Meta.Tactic.Simp.Main Lean.Meta.Tactic.SplitIf Lean.Meta.Tactic.Apply Lean.Meta.Tactic.Generalize
// Imports: Lean.Meta.Match.MatcherApp.Basic Lean.Meta.Tactic.Simp.Main Lean.Meta.Tactic.SplitIf Lean.Meta.Tactic.Apply Lean.Meta.Tactic.Generalize
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -78,6 +78,7 @@ lean_object* l_Lean_MVarId_replaceTargetEq(lean_object*, lean_object*, lean_obje
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_withEqs_go___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*, lean_object*, lean_object*);
lean_object* lean_array_fget(lean_object*, lean_object*);
lean_object* l_Lean_Meta_Simp_main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_Match_MatcherInfo_arity(lean_object*);
uint8_t l_Lean_Level_isZero(lean_object*);
LEAN_EXPORT uint8_t l_Lean_Meta_Split_findSplit_x3f_isCandidate___lambda__1(lean_object*);
@ -252,7 +253,6 @@ static lean_object* l___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_genera
LEAN_EXPORT lean_object* l_Lean_Meta_Split_applyMatchSplitter___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_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_withNewAltEqs_go___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_EXPORT lean_object* l_Lean_Meta_Split_simpMatch_pre(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_simpMatchCore_pre(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_isIte(lean_object*);
@ -3289,7 +3289,7 @@ static lean_object* _init_l_List_forIn_loop___at___private_Lean_Meta_Tactic_Spli
_start:
{
lean_object* x_1;
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherInfo", 27);
x_1 = lean_mk_string_from_bytes("Lean.Meta.Match.MatcherApp.Basic", 32);
return x_1;
}
}
@ -3315,7 +3315,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_List_forIn_loop___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_mkNewTarget___spec__3___closed__1;
x_2 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_mkNewTarget___spec__3___closed__2;
x_3 = lean_unsigned_to_nat(183u);
x_3 = lean_unsigned_to_nat(63u);
x_4 = lean_unsigned_to_nat(53u);
x_5 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_mkNewTarget___spec__3___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -6828,7 +6828,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_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs___lambda__6___closed__1;
x_2 = l___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs___lambda__6___closed__2;
x_3 = lean_unsigned_to_nat(114u);
x_3 = lean_unsigned_to_nat(115u);
x_4 = lean_unsigned_to_nat(59u);
x_5 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_mkNewTarget___spec__3___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -6897,7 +6897,7 @@ lean_inc(x_9);
lean_inc(x_8);
lean_inc(x_7);
lean_inc(x_6);
x_20 = l_Lean_Meta_forallTelescope___at___private_Lean_Meta_InferType_0__Lean_Meta_inferForallType___spec__2___rarg(x_4, x_19, x_6, x_7, x_8, x_9, x_16);
x_20 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_4, x_19, x_6, x_7, x_8, x_9, x_16);
if (lean_obj_tag(x_20) == 0)
{
lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25;
@ -14070,6 +14070,7 @@ x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1);
return x_5;
}
}
lean_object* initialize_Lean_Meta_Match_MatcherApp_Basic(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Simp_Main(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_SplitIf(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Meta_Tactic_Apply(uint8_t builtin, lean_object*);
@ -14079,6 +14080,9 @@ LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Split(uint8_t builtin, lean
lean_object * res;
if (_G_initialized) return lean_io_result_mk_ok(lean_box(0));
_G_initialized = true;
res = initialize_Lean_Meta_Match_MatcherApp_Basic(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Meta_Tactic_Simp_Main(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);

View file

@ -1,6 +1,6 @@
// Lean compiler output
// Module: Lean.Meta.Tactic.TryThis
// Imports: Lean.Server.CodeActions Lean.Widget.UserWidget Lean.Data.Json.Elab
// Imports: Lean.Server.CodeActions Lean.Widget.UserWidget Lean.Data.Json.Elab Lean.Data.Lsp.Utf16
#include <lean/lean.h>
#if defined(__clang__)
#pragma clang diagnostic ignored "-Wunused-parameter"
@ -18,7 +18,7 @@ static lean_object* l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replace
static uint8_t l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__18;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___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_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange(lean_object*, lean_object*);
lean_object* l_Lean_FileMap_utf8RangeToLspRange(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__10;
static lean_object* l_Lean_Meta_Tactic_TryThis_instInhabitedSuggestion___closed__1;
static lean_object* l___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addSuggestionCore___closed__1;
@ -42,11 +42,10 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__42;
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__2;
LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___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*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__9;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_;
lean_object* l_Lean_Json_mkObj(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__10;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__4;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
static lean_object* l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__7;
static lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___spec__1___closed__3;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addSuggestionCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -67,6 +66,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error(uint8_
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__7;
lean_object* l_Lean_Syntax_getId(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__57;
static lean_object* l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2;
static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___spec__1___closed__4;
lean_object* lean_array_push(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores(lean_object*);
@ -74,12 +74,10 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__40;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_success;
uint8_t lean_usize_dec_eq(size_t, size_t);
static lean_object* l___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addSuggestionCore___closed__2;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6;
static double l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__4;
LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___spec__2(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionText_pretty(lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__61;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3;
static double l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__2;
lean_object* l_Lean_replaceRef(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_warning___closed__11;
@ -108,6 +106,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambd
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_instSuggestionStyleInhabited;
uint64_t lean_string_hash(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__55;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1;
lean_object* l_Lean_Elab_InfoTree_foldInfo___rarg(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__65;
lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -171,8 +170,8 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_addSuggestions___closed__1;
static lean_object* l___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addSuggestionCore___closed__6;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_warning___closed__8;
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__7;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__20;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2;
uint8_t l_instDecidableNot___rarg(uint8_t);
static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addExactSuggestionCore___spec__1___closed__2;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_getIndentAndColumn___lambda__1___boxed(lean_object*);
@ -182,7 +181,6 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_warning___closed_
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__58;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addSuggestions___spec__1(size_t, size_t, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_asInaccessible___closed__4;
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange___boxed(lean_object*, lean_object*);
double lean_float_add(double, double);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__15;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addTermSuggestions___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -198,7 +196,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_Suggestion_toJsonAndInfoM___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__13;
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__11;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__51;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_Suggestion_toJsonAndInfoM___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_instInhabitedSuggestionText;
@ -215,13 +212,14 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_de
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__10;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__54;
extern lean_object* l_Lean_instToJsonJson;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_;
static double l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__43;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_instToMessageDataSuggestionText(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionText_prettyExtra___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__9;
lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* l_Lean_FileMap_utf8PosToLspPos(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__23;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_tryThisProvider___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__9;
@ -313,20 +311,20 @@ static lean_object* l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replace
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__49;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__13;
LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_TryThis_0__Lean_Meta_Tactic_TryThis_addExactSuggestionCore___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_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__39;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__3___boxed__const__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__32;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__11;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
static lean_object* l_List_mapTR_loop___at_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___spec__2___closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_asHypothesis___closed__4;
LEAN_EXPORT lean_object* l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___spec__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_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addSuggestions___spec__1___boxed(lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__22;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion(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_String_findAux(lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7;
static lean_object* l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___closed__2;
static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___spec__1___closed__2;
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__67;
@ -346,6 +344,7 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__3;
uint8_t lean_nat_dec_eq(lean_object*, lean_object*);
uint8_t l_Lean_Name_hasNum(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___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_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5;
LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Tactic_TryThis_addSuggestions___spec__2(lean_object*, size_t, size_t, lean_object*);
lean_object* l_Lean_Syntax_SepArray_ofElems(lean_object*, lean_object*);
static lean_object* l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1;
@ -399,8 +398,9 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__35;
static lean_object* l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__3;
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_value___closed__17;
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___closed__2;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2;
static lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___closed__8;
static lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761_(lean_object*);
lean_object* l_List_reverse___rarg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_getInputWidth___boxed(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__2;
@ -453,7 +453,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_
lean_object* lean_nat_add(lean_object*, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_warning___closed__12;
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___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_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776_(lean_object*);
lean_object* l_Lean_MessageData_bracket(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__2(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__53;
@ -474,7 +473,6 @@ static lean_object* l_Lean_Meta_Tactic_TryThis_Suggestion_toJsonAndInfoM___lambd
static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___spec__1___closed__1;
LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___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*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_warning___closed__1;
static lean_object* l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1;
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__2___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_SuggestionStyle_error___closed__15;
static lean_object* l_Lean_Meta_Tactic_TryThis_addExactSuggestions___closed__1;
@ -493,30 +491,6 @@ static lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_addRewr
LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
uint8_t l_Array_isEmpty___rarg(lean_object*);
static lean_object* l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed__69;
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange(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;
x_3 = lean_ctor_get(x_2, 0);
x_4 = l_Lean_FileMap_utf8PosToLspPos(x_1, x_3);
x_5 = lean_ctor_get(x_2, 1);
x_6 = l_Lean_FileMap_utf8PosToLspPos(x_1, x_5);
x_7 = lean_alloc_ctor(0, 2, 0);
lean_ctor_set(x_7, 0, x_4);
lean_ctor_set(x_7, 1, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Lean_FileMap_utf8RangeToLspRange___boxed(lean_object* x_1, lean_object* x_2) {
_start:
{
lean_object* x_3;
x_3 = l_Lean_FileMap_utf8RangeToLspRange(x_1, x_2);
lean_dec(x_2);
lean_dec(x_1);
return x_3;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1() {
_start:
{
@ -626,7 +600,7 @@ x_4 = l_Lean_Widget_addBuiltinModule(x_2, x_3, x_1);
return x_4;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1() {
_start:
{
lean_object* x_1;
@ -634,7 +608,7 @@ x_1 = lean_mk_string_from_bytes("TryThisInfo", 11);
return x_1;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2() {
_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;
@ -642,16 +616,16 @@ x_1 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1;
x_2 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__2;
x_3 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__3;
x_4 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__4;
x_5 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1;
x_5 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1;
x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5);
return x_6;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_() {
_start:
{
lean_object* x_1;
x_1 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2;
x_1 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2;
return x_1;
}
}
@ -659,7 +633,7 @@ static lean_object* _init_l_Lean_Meta_Tactic_TryThis_instTypeNameTryThisInfo() {
_start:
{
lean_object* x_1;
x_1 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_;
x_1 = l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_;
return x_1;
}
}
@ -2920,7 +2894,7 @@ lean_dec(x_2);
return x_7;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1() {
_start:
{
lean_object* x_1;
@ -2928,7 +2902,7 @@ x_1 = lean_mk_string_from_bytes("format", 6);
return x_1;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2() {
_start:
{
lean_object* x_1;
@ -2936,17 +2910,17 @@ x_1 = lean_mk_string_from_bytes("inputWidth", 10);
return x_1;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1;
x_2 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1;
x_2 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2;
x_3 = l_Lean_Name_mkStr2(x_1, x_2);
return x_3;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4() {
_start:
{
lean_object* x_1;
@ -2954,7 +2928,7 @@ x_1 = lean_mk_string_from_bytes("", 0);
return x_1;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5() {
_start:
{
lean_object* x_1;
@ -2962,13 +2936,13 @@ x_1 = lean_mk_string_from_bytes("ideal input width", 17);
return x_1;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6() {
_start:
{
lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4;
x_1 = lean_unsigned_to_nat(100u);
x_2 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_3 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5;
x_2 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_3 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5;
x_4 = lean_alloc_ctor(0, 3, 0);
lean_ctor_set(x_4, 0, x_1);
lean_ctor_set(x_4, 1, x_2);
@ -2976,7 +2950,7 @@ lean_ctor_set(x_4, 2, x_3);
return x_4;
}
}
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7() {
static lean_object* _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__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; lean_object* x_7;
@ -2984,19 +2958,19 @@ x_1 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1;
x_2 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__2;
x_3 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__3;
x_4 = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__4;
x_5 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1;
x_6 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2;
x_5 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1;
x_6 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2;
x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776_(lean_object* x_1) {
LEAN_EXPORT lean_object* l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761_(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_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3;
x_3 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6;
x_4 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7;
x_2 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3;
x_3 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6;
x_4 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__7;
x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_RecDepth___hyg_6____spec__1(x_2, x_3, x_4, x_1);
return x_5;
}
@ -5381,7 +5355,7 @@ static lean_object* _init_l_Lean_Meta_Tactic_TryThis_addSuggestion___closed__1()
_start:
{
lean_object* x_1; lean_object* x_2;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_2 = l_Lean_stringToMessageData(x_1);
return x_2;
}
@ -7089,7 +7063,7 @@ static lean_object* _init_l_Lean_Meta_Tactic_TryThis_addHaveSuggestion___closed_
_start:
{
lean_object* x_1; lean_object* x_2;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_2 = l_String_toSubstring_x27(x_1);
return x_2;
}
@ -8481,7 +8455,7 @@ static lean_object* _init_l_List_mapTR_loop___at_Lean_Meta_Tactic_TryThis_addRew
_start:
{
lean_object* x_1; lean_object* x_2;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_1 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_2 = lean_alloc_ctor(3, 1, 0);
lean_ctor_set(x_2, 0, x_1);
return x_2;
@ -8786,7 +8760,7 @@ lean_ctor_set(x_24, 1, x_23);
if (lean_obj_tag(x_5) == 0)
{
lean_object* x_25; lean_object* x_26; lean_object* x_27;
x_25 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_25 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_26 = lean_box(0);
x_27 = l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__1(x_6, x_2, x_3, x_25, x_24, x_26, x_7, x_8, x_9, x_10, x_11, x_12, x_13);
lean_dec(x_10);
@ -8831,7 +8805,7 @@ x_40 = lean_format_pretty(x_36, x_38, x_39, x_39);
x_41 = l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__8;
x_42 = lean_string_append(x_41, x_40);
lean_dec(x_40);
x_43 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_43 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_44 = lean_string_append(x_42, x_43);
x_45 = lean_string_append(x_43, x_44);
lean_dec(x_44);
@ -8898,7 +8872,7 @@ lean_ctor_set(x_60, 1, x_59);
if (lean_obj_tag(x_5) == 0)
{
lean_object* x_61; lean_object* x_62; lean_object* x_63;
x_61 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_61 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_62 = lean_box(0);
x_63 = l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__1(x_6, x_2, x_3, x_61, x_60, x_62, x_7, x_8, x_9, x_10, x_11, x_12, x_13);
lean_dec(x_10);
@ -8943,7 +8917,7 @@ x_76 = lean_format_pretty(x_72, x_74, x_75, x_75);
x_77 = l_Lean_Meta_Tactic_TryThis_addRewriteSuggestion___lambda__2___closed__8;
x_78 = lean_string_append(x_77, x_76);
lean_dec(x_76);
x_79 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4;
x_79 = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4;
x_80 = lean_string_append(x_78, x_79);
x_81 = lean_string_append(x_79, x_80);
lean_dec(x_80);
@ -9379,6 +9353,7 @@ return x_14;
lean_object* initialize_Lean_Server_CodeActions(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Widget_UserWidget(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Data_Json_Elab(uint8_t builtin, lean_object*);
lean_object* initialize_Lean_Data_Lsp_Utf16(uint8_t builtin, lean_object*);
static bool _G_initialized = false;
LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_TryThis(uint8_t builtin, lean_object* w) {
lean_object * res;
@ -9393,6 +9368,9 @@ lean_dec_ref(res);
res = initialize_Lean_Data_Json_Elab(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
res = initialize_Lean_Data_Lsp_Utf16(builtin, lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1 = _init_l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__1);
l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__2 = _init_l_Lean_Meta_Tactic_TryThis_tryThisWidget___closed__2();
@ -9417,12 +9395,12 @@ lean_mark_persistent(l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget___clo
if (builtin) {res = l___regBuiltin_Lean_Meta_Tactic_TryThis_tryThisWidget(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
lean_dec_ref(res);
}l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1 = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__1);
l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2 = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65____closed__2);
l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_ = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_65_);
}l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1 = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__1);
l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2 = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50____closed__2);
l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_ = _init_l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instImpl____x40_Lean_Meta_Tactic_TryThis___hyg_50_);
l_Lean_Meta_Tactic_TryThis_instTypeNameTryThisInfo = _init_l_Lean_Meta_Tactic_TryThis_instTypeNameTryThisInfo();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_instTypeNameTryThisInfo);
l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___spec__1___closed__1 = _init_l_Std_Range_forIn_x27_loop___at_Lean_Meta_Tactic_TryThis_tryThisProvider___spec__1___closed__1();
@ -9466,21 +9444,21 @@ l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores__
lean_mark_persistent(l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___closed__3);
l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___closed__4 = _init_l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___closed__4();
lean_mark_persistent(l_Lean_Syntax_replaceM___at_Lean_Meta_Tactic_TryThis_replaceMVarsByUnderscores___spec__1___rarg___closed__4);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__1);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__2);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__3);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__4);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__5);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__6);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776____closed__7);
res = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_776_(lean_io_mk_world());
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__1);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__2);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__3);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__4);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__5);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__6);
l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__7 = _init_l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__7();
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761____closed__7);
res = l_Lean_Meta_Tactic_TryThis_initFn____x40_Lean_Meta_Tactic_TryThis___hyg_761_(lean_io_mk_world());
if (lean_io_result_is_error(res)) return res;
l_Lean_Meta_Tactic_TryThis_format_inputWidth = lean_io_result_get_value(res);
lean_mark_persistent(l_Lean_Meta_Tactic_TryThis_format_inputWidth);

View file

@ -795,7 +795,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_Core_transform_visit___rarg___lambda__2___closed__1;
x_2 = l_Lean_Core_transform_visit___rarg___lambda__2___closed__2;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_Core_transform_visit___rarg___lambda__2___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -933,7 +933,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_Core_transform_visit___rarg___lambda__2___closed__1;
x_2 = l_Lean_Core_transform_visit___rarg___lambda__4___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_Core_transform_visit___rarg___lambda__4___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -1071,7 +1071,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_Core_transform_visit___rarg___lambda__2___closed__1;
x_2 = l_Lean_Core_transform_visit___rarg___lambda__6___closed__1;
x_3 = lean_unsigned_to_nat(1737u);
x_3 = lean_unsigned_to_nat(1756u);
x_4 = lean_unsigned_to_nat(22u);
x_5 = l_Lean_Core_transform_visit___rarg___lambda__6___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -1243,7 +1243,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_Core_transform_visit___rarg___lambda__2___closed__1;
x_2 = l_Lean_Core_transform_visit___rarg___lambda__9___closed__1;
x_3 = lean_unsigned_to_nat(1671u);
x_3 = lean_unsigned_to_nat(1690u);
x_4 = lean_unsigned_to_nat(17u);
x_5 = l_Lean_Core_transform_visit___rarg___lambda__9___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -1315,7 +1315,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_Core_transform_visit___rarg___lambda__2___closed__1;
x_2 = l_Lean_Core_transform_visit___rarg___lambda__10___closed__1;
x_3 = lean_unsigned_to_nat(1682u);
x_3 = lean_unsigned_to_nat(1701u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_Core_transform_visit___rarg___lambda__10___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

File diff suppressed because it is too large Load diff

View file

@ -12886,7 +12886,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__9___closed__2;
x_3 = lean_unsigned_to_nat(1660u);
x_3 = lean_unsigned_to_nat(1679u);
x_4 = lean_unsigned_to_nat(14u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__9___closed__3;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -12967,7 +12967,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__10___closed__1;
x_3 = lean_unsigned_to_nat(1649u);
x_3 = lean_unsigned_to_nat(1668u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__10___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -13049,7 +13049,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__11___closed__1;
x_3 = lean_unsigned_to_nat(1728u);
x_3 = lean_unsigned_to_nat(1747u);
x_4 = lean_unsigned_to_nat(20u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__11___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -13187,7 +13187,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__13___closed__1;
x_3 = lean_unsigned_to_nat(1708u);
x_3 = lean_unsigned_to_nat(1727u);
x_4 = lean_unsigned_to_nat(24u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__13___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -13325,7 +13325,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__15___closed__1;
x_3 = lean_unsigned_to_nat(1737u);
x_3 = lean_unsigned_to_nat(1756u);
x_4 = lean_unsigned_to_nat(22u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__15___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -13493,7 +13493,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__18___closed__1;
x_3 = lean_unsigned_to_nat(1671u);
x_3 = lean_unsigned_to_nat(1690u);
x_4 = lean_unsigned_to_nat(17u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__18___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);
@ -13577,7 +13577,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_instantiateExprMVars___rarg___lambda__9___closed__1;
x_2 = l_Lean_instantiateExprMVars___rarg___lambda__19___closed__1;
x_3 = lean_unsigned_to_nat(1682u);
x_3 = lean_unsigned_to_nat(1701u);
x_4 = lean_unsigned_to_nat(18u);
x_5 = l_Lean_instantiateExprMVars___rarg___lambda__19___closed__2;
x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5);

Some files were not shown because too many files have changed in this diff Show more