aboutsummaryrefslogtreecommitdiff
path: root/src/ir_print.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ir_print.cpp')
-rw-r--r--src/ir_print.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/ir_print.cpp b/src/ir_print.cpp
index 0e4a544f0..c11712aa8 100644
--- a/src/ir_print.cpp
+++ b/src/ir_print.cpp
@@ -2067,19 +2067,21 @@ void print_llvm_ir(irGen *ir) {
} else {
ir_fprintf(f, "!DICompositeType("
"name: \"%.*s\""
- ", scope: !%d"
- ", file: !%d"
- ", line: %td"
", size: %d"
", align: %d"
", tag: ",
LIT(di->CompositeType.name),
- di->CompositeType.scope->id,
- di->CompositeType.file->id,
- di->CompositeType.pos.line,
di->CompositeType.size,
di->CompositeType.align);
ir_print_debug_encoding(f, irDebugInfo_CompositeType, di->CompositeType.tag);
+ if (di->CompositeType.scope) {
+ ir_fprintf(f, ", scope: !%d"
+ ", file: !%d"
+ ", line: %td",
+ di->CompositeType.scope->id,
+ di->CompositeType.file->id,
+ di->CompositeType.pos.line);
+ }
if (di->CompositeType.base_type) {
GB_ASSERT(di->CompositeType.tag == irDebugBasicEncoding_enumeration_type);
ir_fprintf(f, ", baseType: !%d", di->CompositeType.base_type->id);