@@ -48,7 +48,12 @@ namespace Builtins
4848
4949||| The eliminator for the `Void` type.
5050void : Void -> a
51−void {a} v = elim_for Void (\_ => a) v
51+-- We can't define void yet. We can't define a function with no clauses without
52+-- elaborator reflection, and we can't do elaborator reflection without
53+-- Language.Reflection.Elab, and Language.Reflection.Elab depends on Builtins.
54+-- We can't delay the declaration of void, because Prelude.Uninhabited depends on
55+-- it, Prelude.Nat depends on Prelude.Uninhabited, and Language.Reflection.Elab
56+-- depends on Prelude.Nat. Instead, void is defined in Prelude.idr
5257
5358||| For 'symbol syntax. 'foo becomes Symbol_ "foo"
5459data Symbol_ : String -> Type where