<p dir="auto">On the 1.5.2 branch (or 1.5.1), the file src/atomics.h is missing a template keyword for jl_atomic_store_release , around line 269, making the file uncompilable (in VS2017). See </p><div class="Box Box--condensed my-2">
  <div class="Box-header f6">
    <p class="mb-0 text-bold">
      <a href="https://github.com/JuliaLang/julia/blob/539f3ce943f59dec8aff3f2238b083f1b27f41e5/src/atomics.h#L269">julia/src/atomics.h</a>
    </p>
    <p class="mb-0 color-fg-muted">
         Line 269
      in
      <a data-pjax="true" class="commit-tease-sha" href="/JuliaLang/julia/commit/539f3ce943f59dec8aff3f2238b083f1b27f41e5">539f3ce</a>
    </p>
  </div>
  <div itemprop="text" class="Box-body p-0 blob-wrapper blob-wrapper-embedded data">
    <table class="highlight tab-size mb-0 js-file-line-container" data-tab-size="8" data-paste-markdown-skip="">

        <tbody><tr class="border-0">
          <td id="L269" class="blob-num border-0 px-3 py-0 color-bg-default" data-line-number="269"></td>
          <td id="LC269" class="blob-code border-0 px-3 py-0 color-bg-default blob-code-inner js-file-line"> <span class="pl-k">static</span> <span class="pl-k">inline</span> <span class="pl-k">void</span> <span class="pl-en">jl_atomic_store_relaxed</span>(<span class="pl-k">volatile</span> T *obj, T2 val) </td>
        </tr>
    </tbody></table>
  </div>
</div>
 .<p></p>
<p dir="auto">This is compiling the code at <a href="https://docs.julialang.org/en/v1/manual/embedding/#High-Level-Embedding-on-Windows-with-Visual-Studio" rel="nofollow">https://docs.julialang.org/en/v1/manual/embedding/#High-Level-Embedding-on-Windows-with-Visual-Studio</a> .</p>
<p dir="auto">This change is made in commit <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/JuliaLang/julia/commit/2b510b417b83b3c08a069866ecf90e2f3a97fc2d/hovercard" href="https://github.com/JuliaLang/julia/commit/2b510b417b83b3c08a069866ecf90e2f3a97fc2d"><tt>2b510b4</tt></a> on master, which appears to be working on a different feature, but that commit is not in 1.5.2 .</p>
<p dir="auto">First, It seems like the template parameters for <a href="https://github.com/JuliaLang/julia/blob/b8110f8d1ec6349bee77efb5022621fdf50bd4a5/src/atomics.h#L269">this function</a> aren't defined.</p>
<p dir="auto">Trying to embed julia in c++, using the <a href="https://docs.julialang.org/en/v1/manual/embedding/#High-Level-Embedding-on-Windows-with-Visual-Studio-1" rel="nofollow">bare minimum example</a> given in the documentation gives the error: <code class="notranslate">1&gt;C:\Julia_1.5_x32\include\julia\atomics.h(269,55): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int</code>. That should be pretty trivial to "fix".</p>
<p dir="auto">The issue is this <code class="notranslate">1&gt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um\winnt.h(173,1): fatal error C1189: #error:  "No Target Architecture"</code>, in the same bare minimum example code. Perhaps the cpu architecture( <code class="notranslate">_X86_</code> in my case) isn't defined correctly somewhere in the julia headers before including winnt.h or my configuration is bugged somehow.</p>
<p dir="auto">In my case, defining <code class="notranslate">_X86_</code> before including julia.h and modifying atomics.h results in running code.</p>
<p dir="auto">IDE is visual studio 2019 preview, platform toolset is v142 and win 10 sdk version is 10.0.18362.0. Compiler is MSVC.</p>
<p dir="auto">Related Issue: <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="542591133" data-permission-text="Title is private" data-url="https://github.com/JuliaLang/julia/issues/34201" data-hovercard-type="issue" data-hovercard-url="/JuliaLang/julia/issues/34201/hovercard" href="https://github.com/JuliaLang/julia/issues/34201">#34201</a></p>
<p dir="auto">Version Info:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Julia Version 1.5.0-rc1.0
Commit 24f033c951 (2020-06-26 20:13 UTC)
Platform Info:
  OS: Windows (i686-w64-mingw32)
  CPU: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
  WORD_SIZE: 32
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_DIR = C:\Julia_1.5_x32"><pre class="notranslate"><code class="notranslate">Julia Version 1.5.0-rc1.0
Commit 24f033c951 (2020-06-26 20:13 UTC)
Platform Info:
  OS: Windows (i686-w64-mingw32)
  CPU: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
  WORD_SIZE: 32
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_DIR = C:\Julia_1.5_x32
</code></pre></div>