mirror of
https://github.com/Ed94/Odin.git
synced 2026-07-11 22:01:25 -07:00
typeid
This commit is contained in:
@@ -342,6 +342,7 @@ void ir_print_type(irFileBuffer *f, irModule *m, Type *t, bool in_struct) {
|
||||
case Basic_string: ir_write_str_lit(f, "%..string"); return;
|
||||
case Basic_cstring: ir_write_str_lit(f, "i8*"); return;
|
||||
|
||||
case Basic_typeid: ir_write_str_lit(f, "%..typeid"); return;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1750,6 +1751,12 @@ void print_llvm_ir(irGen *ir) {
|
||||
ir_print_type(f, m, t_type_info_ptr);
|
||||
ir_write_str_lit(f, "} ; Basic_any\n");
|
||||
|
||||
ir_print_encoded_local(f, str_lit("..typeid"));
|
||||
ir_write_str_lit(f, " = type ");
|
||||
ir_print_type(f, m, t_uintptr);
|
||||
ir_write_str_lit(f, "; Basic_typeid\n");
|
||||
|
||||
|
||||
ir_write_str_lit(f, "declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone \n");
|
||||
ir_write_byte(f, '\n');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user