diff --git a/lld/ELF/LinkerScript.cpp b/lld/ELF/LinkerScript.cpp
index c7e103a..4e8ee8b 100644
--- a/lld/ELF/LinkerScript.cpp
+++ b/lld/ELF/LinkerScript.cpp
@@ -859,16 +859,16 @@
 ExprValue LinkerScript::getSymbolValue(const Twine &Loc, StringRef S) {
   if (S == ".") {
     if (CurAddressState)
-      return {CurAddressState->OutSec, Dot - CurAddressState->OutSec->Addr,
-              Loc};
+      return {CurAddressState->OutSec, false,
+              Dot - CurAddressState->OutSec->Addr, Loc};
     error(Loc + ": unable to get location counter value");
     return 0;
   }
   if (SymbolBody *B = Symtab->find(S)) {
     if (auto *D = dyn_cast<DefinedRegular>(B))
-      return {D->Section, D->Value, Loc};
+      return {D->Section, false, D->Value, Loc};
     if (auto *C = dyn_cast<DefinedCommon>(B))
-      return {C->Section, 0, Loc};
+      return {C->Section, false, 0, Loc};
   }
   error(Loc + ": symbol not found: " + S);
   return 0;
