void test_main(lua_State* L)
{
    DOSTRING(L, "x = 4294967295");

    unsigned int x = luabind::object_cast<unsigned int>(
        luabind::globals(L)["x"]);

    unsigned int y = 4294967295UL;

    TEST_CHECK(x == y);
}
void test_set_instance_value_main(lua_State* L)
{
    DOSTRING(L,
        "class 'X'\n"
        "  function X:__init()\n"
        "    self.value = 1\n"
        "    self.second = 2\n"
        "  end\n"
        "\n"
        "x = X()\n"
        "assert(x.value == 1)\n"
        "assert(x.second == 2)\n"
        "x.value = 2\n"
        "assert(x.value == 2)\n"
        "assert(x.second == 2)\n"
        "x.second = 3\n"
        "y = X()\n"
        "assert(y.value == 1)\n"
        "assert(y.second == 2)\n"
        "assert(x.value == 2)\n"
        "assert(x.second == 3)\n"
    );
}