<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Assertion: InitVal->getType() == getValueType() && "Initializer type must match GlobalVariable type""
   href="https://bugs.llvm.org/show_bug.cgi?id=34348">34348</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Assertion: InitVal->getType() == getValueType() && "Initializer type must match GlobalVariable type"
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>new-bugs
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>new bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>hans@chromium.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Hitting this assertion when building Chromium. Stack trace below.

I've uploaded the repro at
<a href="https://bugs.chromium.org/p/chromium/issues/detail?id=759744#c4">https://bugs.chromium.org/p/chromium/issues/detail?id=759744#c4</a>

clang-6.0:
/b/c/builder/ClangToTLinux/src/third_party/llvm/lib/IR/Globals.cpp:350: void
llvm::GlobalVariable::setInitializer(llvm::Constant*): Assertion
`InitVal->getType() == getValueType() && "Initializer type must match
GlobalVariable type"' failed.
#0 0x00000000020880ea llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x20880ea)
#1 0x00000000020861ee llvm::sys::RunSignalHandlers()
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x20861ee)
#2 0x0000000002086352
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2086352)
#3 0x00007f8778b65330 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
#4 0x00007f8777755c37 gsignal
/build/eglibc-SvCtMH/eglibc-2.19/signal/../nptl/sysdeps/unix/sysv/linux/raise.c:56:0
#5 0x00007f8777759028 abort
/build/eglibc-SvCtMH/eglibc-2.19/stdlib/abort.c:91:0
#6 0x00007f877774ebf6 __assert_fail_base
/build/eglibc-SvCtMH/eglibc-2.19/assert/assert.c:92:0
#7 0x00007f877774eca2 (/lib/x86_64-linux-gnu/libc.so.6+0x2fca2)
#8 0x0000000001c16d7d
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x1c16d7d)
#9 0x00000000022a7e2e
clang::CodeGen::CodeGenModule::GetOrCreateLLVMGlobal(llvm::StringRef,
llvm::PointerType*, clang::VarDecl const*, clang::CodeGen::ForDefinition_t)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22a7e2e)
#10 0x00000000022a806c
clang::CodeGen::CodeGenModule::GetAddrOfGlobalVar(clang::VarDecl const*,
llvm::Type*, clang::CodeGen::ForDefinition_t)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22a806c)
#11 0x00000000023b8e40
clang::CodeGen::CodeGenFunction::EmitDeclRefLValue(clang::DeclRefExpr const*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23b8e40)
#12 0x00000000023b8726 clang::CodeGen::CodeGenFunction::EmitLValue(clang::Expr
const*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23b8726)
#13 0x00000000023b8c10
clang::CodeGen::CodeGenFunction::EmitReferenceBindingToExpr(clang::Expr const*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23b8c10)
#14 0x0000000002366843
clang::CodeGen::CodeGenFunction::EmitCallArg(clang::CodeGen::CallArgList&,
clang::Expr const*, clang::QualType)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2366843)
#15 0x0000000002367f90
clang::CodeGen::CodeGenFunction::EmitCallArgs(clang::CodeGen::CallArgList&,
llvm::ArrayRef<clang::QualType>,
llvm::iterator_range<clang::Stmt::ConstExprIterator>,
clang::CodeGen::CodeGenFunction::AbstractCallee, unsigned int,
clang::CodeGen::CodeGenFunction::EvaluationOrder)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2367f90)
#16 0x0000000002303223
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2303223)
#17 0x00000000023b6ce6
clang::CodeGen::CodeGenFunction::EmitCall(clang::QualType,
clang::CodeGen::CGCallee const&, clang::CallExpr const*,
clang::CodeGen::ReturnValueSlot, llvm::Value*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23b6ce6)
#18 0x00000000023c0890
clang::CodeGen::CodeGenFunction::EmitCallExpr(clang::CallExpr const*,
clang::CodeGen::ReturnValueSlot)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c0890)
#19 0x0000000000906048 _init
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x906048)
#20 0x00000000023c5fb2
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c5fb2)
#21 0x00000000023c5a09
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c5a09)
#22 0x00000000023c5561
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c5561)
#23 0x00000000023c6225 clang::CodeGen::CodeGenFunction::EmitAggExpr(clang::Expr
const*, clang::CodeGen::AggValueSlot)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c6225)
#24 0x0000000000905dfd _init
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x905dfd)
#25 0x00000000023c59b2
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c59b2)
#26 0x00000000023c57b2
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c57b2)
#27 0x00000000023c6225 clang::CodeGen::CodeGenFunction::EmitAggExpr(clang::Expr
const*, clang::CodeGen::AggValueSlot)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23c6225)
#28 0x00000000023772de
clang::CodeGen::CodeGenFunction::EmitInitializerForField(clang::FieldDecl*,
clang::CodeGen::LValue, clang::Expr*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23772de)
#29 0x00000000023774cd
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23774cd)
#30 0x000000000237fc69
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x237fc69)
#31 0x00000000023831d1
clang::CodeGen::CodeGenFunction::EmitConstructorBody(clang::CodeGen::FunctionArgList&)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x23831d1)
#32 0x000000000228a693
clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl,
llvm::Function*, clang::CodeGen::CGFunctionInfo const&)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x228a693)
#33 0x0000000002353ecd
clang::CodeGen::CodeGenModule::codegenCXXStructor(clang::CXXMethodDecl const*,
clang::CodeGen::StructorType)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2353ecd)
#34 0x00000000022f1fb5
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22f1fb5)
#35 0x00000000022bdbfe
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl,
llvm::GlobalValue*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22bdbfe)
#36 0x00000000022becb0
clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22becb0)
#37 0x00000000022f2f70
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22f2f70)
#38 0x00000000022bf235
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22bf235)
#39 0x00000000022c0427
clang::CodeGen::CodeGenModule::EmitDeclContext(clang::DeclContext const*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22c0427)
#40 0x00000000022bf4db
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x22bf4db)
#41 0x00000000028e4c33
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x28e4c33)
#42 0x00000000028df0cd
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x28df0cd)
#43 0x0000000002cd5426 clang::ParseAST(clang::Sema&, bool, bool)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x2cd5426)
#44 0x00000000028e2e3f clang::CodeGenAction::ExecuteAction()
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x28e2e3f)
#45 0x00000000025a0746 clang::FrontendAction::Execute()
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x25a0746)
#46 0x000000000257844e
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x257844e)
#47 0x000000000262eb4b
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0x262eb4b)
#48 0x0000000000b986c8 cc1_main(llvm::ArrayRef<char const*>, char const*,
void*)
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0xb986c8)
#49 0x0000000000b305ed main
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0xb305ed)
#50 0x00007f8777740f45 __libc_start_main
/build/eglibc-SvCtMH/eglibc-2.19/csu/libc-start.c:321:0
#51 0x0000000000b93e89 _start
(/b/c/builder/ClangToTLinux/src/third_party/llvm-build/Release+Asserts/bin/clang-6.0+0xb93e8</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>