瀏覽代碼

Fix Trying to get a pointer to a struct field that does not have a size generates an LLVM error #509

gingerBill 5 年之前
父節點
當前提交
4593730632
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      src/ir_print.cpp

+ 5 - 4
src/ir_print.cpp

@@ -442,12 +442,13 @@ void ir_print_type(irFileBuffer *f, irModule *m, Type *t, bool in_struct) {
 		break;
 		break;
 
 
 	case Type_Pointer:
 	case Type_Pointer:
-		if (!is_type_named(t->Pointer.elem) && is_type_empty_struct(t->Pointer.elem)) {
-			ir_print_type(f, m, t_rawptr);
-		} else {
+		// TODO(bill, 2019-12-22): Why did I make add this edge case? Is this some weird LLVM issue?
+		// if (!is_type_named(t->Pointer.elem) && is_type_empty_struct(t->Pointer.elem)) {
+		// 	ir_print_type(f, m, t_rawptr);
+		// } else {
 			ir_print_type(f, m, t->Pointer.elem);
 			ir_print_type(f, m, t->Pointer.elem);
 			ir_write_byte(f, '*');
 			ir_write_byte(f, '*');
-		}
+		// }
 		return;
 		return;
 	case Type_Array:
 	case Type_Array:
 		ir_write_byte(f, '[');
 		ir_write_byte(f, '[');