let add_axiom id name labels axiom  =
    let collect = Datalib.Collector.push () in
    W.add_axiom id name labels axiom;
    let warns, depends = Datalib.Collector.pop collect in
    begin
      List.iter
        (fun w ->
           Wp_parameters.warning "Warning for Axiom %s:@\nFrom %s: %s@\nEffect: %s"
             name w.Wpo.wrn_source w.Wpo.wrn_reason w.Wpo.wrn_effect)
        warns ;
      List.iter
        (fun d ->
           Wp_parameters.warning "Warning for Axiom %s:@\nDepends on %a"
             name Description.pp_property d)
        depends ;
    end