<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello everyone,</p>
    <p>I'm currently experimenting with build2 and came across a weird
      problem that can be reproduced with this Test.cpp:</p>
    <div style="color: #d4d4d4;background-color: #1e1e1e;font-family: 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback';font-weight: normal;font-size: 14px;line-height: 19px;white-space: pre;"><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><iostream></span></div>
<div><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #dcdcaa;">main</span><span style="color: #d4d4d4;">()</span></div><div><span style="color: #d4d4d4;">{</span></div><div><span style="color: #d4d4d4;">    </span><span style="color: #4ec9b0;">std</span><span style="color: #d4d4d4;">::</span><span style="color: #9cdcfe;">cout</span><span style="color: #d4d4d4;"> </span><span style="color: #dcdcaa;"><<</span><span style="color: #d4d4d4;"> </span><span style="color: #ce9178;">R"(</span></div><div><span style="color: #ce9178;"># test</span></div><div><span style="color: #ce9178;">    )"</span><span style="color: #d4d4d4;">;</span></div><div><span style="color: #d4d4d4;">}</span></div></div>
    <p>When executing 'b' on it I get<br>
    </p>
    <p>error: inconsistent C++ compiler behavior<br>
        info: run the following two commands to investigate<br>
        info: g++ -I/home/jay/Projects/Test-gcc/Test
      -I/home/jay/Projects/Test -std=c++2a -x c++ -MQ ^ -MD -E
      -fdirectives-only -MF
      /home/jay/Projects/Test-gcc/Test/Test/Test.o.t -o
      /home/jay/Projects/Test-gcc/Test/Test/Test.o.ii
      /home/jay/Projects/Test/Test/Test.cpp<br>
        info: g++ -I/home/jay/Projects/Test-gcc/Test
      -I/home/jay/Projects/Test -std=c++2a -x c++ -MQ ^ -M -MG
      /home/jay/Projects/Test/Test/Test.cpp<br>
        info: while extracting header dependencies from
      Test/cxx{<a class="moz-txt-link-abbreviated" href="mailto:Test}@../Test-gcc/Test/Test/">Test}@../Test-gcc/Test/Test/</a><br>
        info: while applying rule cxx.compile to update
      ../Test-gcc/Test/Test/obje{Test}<br>
        info: while applying rule cxx.link to update
      ../Test-gcc/Test/Test/exe{Test}<br>
        info: while applying rule alias to update
      ../Test-gcc/Test/dir{Test/}<br>
        info: while applying rule alias to update ../Test-gcc/dir{Test/}<br>
      info: failed to update ../Test-gcc/dir{Test/}</p>
    <p>Executing the first g++ line I get:</p>
    <p>/home/jay/Projects/Test/Test/Test.cpp:9:3: error: invalid
      preprocessing directive #test<br>
          9 | # test<br>
            |   ^~~~</p>
    <p>The second line runs perfectly fine.</p>
    <p>I feel like that might even be a bug in gcc, but as I don't
      understand what is going on in that first g++ invocation I thought
      I first try this channel.</p>
    <p>Best regards,<br>
      Jorn<br>
    </p>
  </body>
</html>