sig
  val create : ?name:string -> Gccjit.function_ -> Gccjit.block
  val parent : Gccjit.block -> Gccjit.function_
  val eval : ?loc:Gccjit.location -> Gccjit.block -> Gccjit.rvalue -> unit
  val assign :
    ?loc:Gccjit.location ->
    Gccjit.block -> Gccjit.lvalue -> Gccjit.rvalue -> unit
  val assign_op :
    ?loc:Gccjit.location ->
    Gccjit.block ->
    Gccjit.lvalue -> Gccjit.binary_op -> Gccjit.rvalue -> unit
  val comment : ?loc:Gccjit.location -> Gccjit.block -> string -> unit
  val cond_jump :
    ?loc:Gccjit.location ->
    Gccjit.block -> Gccjit.rvalue -> Gccjit.block -> Gccjit.block -> unit
  val jump : ?loc:Gccjit.location -> Gccjit.block -> Gccjit.block -> unit
  val return : ?loc:Gccjit.location -> Gccjit.block -> Gccjit.rvalue -> unit
  val return_void : ?loc:Gccjit.location -> Gccjit.block -> unit
  val to_string : Gccjit.block -> string
end