title: Lua create function with upvalues C
body: <p>i'm trying to create a function that has 2 upvalues when inspected from lua.
  debug.getinfo(fvalues).nups should be 2 .</p>
  
  <pre><code>static int fvalues (lua_State *L) {
      int n = lua_gettop(L);
      if (str.size() == 0) {
          str = "This_is_a_test";
      }
      const char *cstr = str.c_str();
      lua_pushstring(L, cstr);
      lua_pushcclosure(L, &amp;fvalues, 1);
      lua_pushstring(L, cstr);
      lua_pushcclosure(L, &amp;fvalues, 2);
      lua_pushstring(L, cstr);
      return 1; 
  }
  </code></pre>
  
  <p>Shouldn't pushclosure create an upvalue in this case, i didn't understand well how this is supposed to work.</p>