title: What's wrong with the c++ code below?
body: <pre><code>HRESULT SaveGraphFile(IGraphBuilder *pGraph, WCHAR *wszPath) 
  {
      const WCHAR wszStreamName[] = L"ActiveMovieGraph"; 
      HRESULT hr;
      IStorage *pStorage = NULL;
  
      // First, create a document file that will hold the GRF file
      hr = StgCreateDocfile(
           wszPath,
           STGM_CREATE │ STGM_TRANSACTED │ STGM_READWRITE │ 
              STGM_SHARE_EXCLUSIVE,
           0, &amp;pStorage);
      ....
  </code></pre>
  
  <p>I copied it somewhere,but the compiler is reporting:</p>
  
  <pre><code>syntax error : missing ')' before identifier '│'
  </code></pre>
  
  <p>Why is <code>|</code> regarded an identifier ?</p>