diff --git a/bridge/go-llvm-dibuildhelper.cpp b/bridge/go-llvm-dibuildhelper.cpp
index aa83d7e..00f64b2 100644
--- a/bridge/go-llvm-dibuildhelper.cpp
+++ b/bridge/go-llvm-dibuildhelper.cpp
@@ -23,6 +23,7 @@
 #include "llvm/IR/DebugLoc.h"
 #include "llvm/IR/Function.h"
 #include "llvm/IR/Instructions.h"
+#include "llvm/IR/Module.h"
 #include "llvm/Support/FileSystem.h"
 
 DIBuildHelper::DIBuildHelper(llvm::Module *module,
@@ -52,6 +53,10 @@
                                     "llvm-goc", isOptimized,
                                     compileFlags, runtimeVersion);
   pushDIScope(moduleScope_);
+
+  module_->addModuleFlag(llvm::Module::Warning, "Debug Info Version",
+                         llvm::DEBUG_METADATA_VERSION);
+  module_->addModuleFlag(llvm::Module::Warning, "Dwarf Version", 4);
 }
 
 void DIBuildHelper::finalize()
diff --git a/unittests/BackendCore/BackendDebugEmit.cpp b/unittests/BackendCore/BackendDebugEmit.cpp
index face485..327bc5f 100644
--- a/unittests/BackendCore/BackendDebugEmit.cpp
+++ b/unittests/BackendCore/BackendDebugEmit.cpp
@@ -34,8 +34,8 @@
       entry:
         %x = alloca i32
         store i32 0, i32* %x
-        call void @llvm.dbg.declare(metadata i32* %x, metadata !3,
-                                    metadata !DIExpression()), !dbg !10
+        call void @llvm.dbg.declare(metadata i32* %x, metadata !5,
+                                    metadata !DIExpression()), !dbg !12
         ret void
       }
   )RAW_RESULT";
@@ -67,8 +67,8 @@
   const char *exp = R"RAW_RESULT(
     define void @foo(i8* nest %nest.0, { i64, i64, i64 }* byval %p0) #0 {
     entry:
-      call void @llvm.dbg.declare(metadata { i64, i64, i64 }* %p0, metadata !3,
-                                  metadata !DIExpression()), !dbg !16
+      call void @llvm.dbg.declare(metadata { i64, i64, i64 }* %p0, metadata !5,
+                                  metadata !DIExpression()), !dbg !18
       ret void
     }
   )RAW_RESULT";
@@ -171,10 +171,10 @@
   h.mkLocal("x", bu32t);
 
   const char *exp = R"RAW_RESULT(
-    define void @foo(i8* nest %nest.0) #0 !dbg !3 {
+    define void @foo(i8* nest %nest.0) #0 !dbg !5 {
     entry:
       %x = alloca i32
-      ret void, !dbg !8
+      ret void, !dbg !10
     }
   )RAW_RESULT";
 
