title: Mimic lambdas in plain C(msvc) - recursive lambdas
body: <p>So I was posed the challenge of mimicking lambda definitions in plain C on the msvc compiler (it doesn't support gcc extensions) - I came up with a file inclusion solution which basically mirrors the file at the top. It works fine for most cases but what if I want to include a lambda inside my lambda:</p>
  
  <pre><code>#ifndef FIRSTPASS
  #include &lt;stdio.h&gt;
  
  //here comes your "nested" definitions
  #define FIRSTPASS
  #include "source.c"
  #undef FIRSTPASS
  
  main(){
  #else
      int global = 2;
      int func() 
      {
          //define another "lambda" here
          printf("%d\n", global);
      }
  #endif
  #ifndef FIRSTPASS
      func();}
  #endif
  </code></pre>