lean4-htt/tests/lean/run/trace_crash.lean
Leonardo de Moura a2dc2b6549 fix(util): null_output_channel
On OSX, Lean was often crashing when using trace messages.
I identified a problem in the thread finalization process.
In OSX, the `silent_ios_helper` at `library/trace.cpp` was being
finalized after the `null_streambuf` at `util/null_ostream.cpp`.
There was also a memory corruption problem also related to
`null_streambuf`.

This commit fixes this problem by using the following recipe
for creating null output stream buffers in C++.

https://stackoverflow.com/questions/11826554/standard-no-op-output-stream
2017-12-20 11:50:41 -08:00

8 lines
204 B
Text

constant f : nat → nat → nat
constant fax1 : ∀ x, f x x = f x 0
constant fax2 : ∀ x, f x 0 = x
set_option trace.type_context.is_def_eq true
example (a : nat) : f a a = a :=
by simp [fax1, fax2]