title: Compile-time only CRC32 user literal
body: <p>Can't get this to work and my brain is melting. The code looks like it should work. I want the function to only work at compile-time and not generate any runtime code or a callable function.</p>
  
  <pre><code>template&lt; char... str &gt;
  constexpr uint32_t operator "" _crc( )
  {
      constexpr auto lambda = [ ]( auto l,
                                   uint32_t crc,
                                   auto first,
                                   auto ... lstr )
      {
          if constexpr ( sizeof...( lstr ) == 0 )
              return ~crc;
  
          return l( l,
                    uCRCTable[ ( crc ^ first ) &amp; 0xFF ] ^ crc &gt;&gt; 8,
                    lstr... );
      };
      return lambda( lambda,
                     uCRCTable[ 0 ],
                     str... );
  }
  
  static_assert( 0xC213271D == "stack overflow"_crc );
  </code></pre>