Mysterious namespace and function_template errors

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Mysterious namespace and function_template errors

Colm Sloan
I decided to use luabind in my Half-Life 2 mod. I successfully implemented it in a small project first to make sure I had all of the linker and include stuff done correctly. I'm also using the newest versions of luabind, boost and lua (because I had the same issue with the version on the Nuclex tutorial version).

I get compiler errors when I include luabind.hpp. Here's the include code:

#include "cbase.h"

#include "lua_luahandle.h"
#include "KeyValues.h"
#include "filesystem.h"
#include "luabind/luabind.hpp"

// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"


And here's the first ever it generates (there are over 100 errors all in the same function_template file):
Error 2 error C2143: syntax error : missing ';' before 'namespace' c:\project02\src\lua\boost\boost\function\function_template.hpp 80 Server Episodic

I get these errors unless I put then luabind include before the cbase include. When I do that, it starts acting strange in another way. I get the error:
Error 3 error C2653: 'luabind' : is not a class or namespace name c:\project02\src\game\server\lua_luahandle.cpp 32 Server Episodic

Also, intellisense can see the luabind namespace but when I type it and use the scope operator ( :: ) to see what's in it, only disable_super_deprecation is visible. Even so, when I compile, it still doesn't recognise luabind as a namespace.

I've quadruple checked my linker and include stuff and have tried different versions. I've created a new project and given it the same linker and include setup and it works fine. What could I be doing wrong and how can I fix it?

I really appreciate any help. Just throw any ideas you have at me because I'm all out. Thanks :)

------------------------------------------------------------------------------

_______________________________________________
luabind-user mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/luabind-user
Reply | Threaded
Open this post in threaded view
|

Re: Mysterious namespace and function_template errors

Iliya Trendafilov
It seems to me that there's an error in one or more of your own header
files. Getting different errors depending on where you put the
#include "luabind/luabind.hpp" is a strong indication of that. A
suggestion for troubleshooting: comment all the code in this .cpp
file, leave only the #include "luabind/luabind.hpp" line uncommented.
Then, uncomment your other includes one by one and see which one
causes errors. You should be able to track it down reasonably fast.

Hope that helps.

On Sun, Jul 5, 2009 at 1:24 PM, Colm Sloan<[hidden email]> wrote:

> I decided to use luabind in my Half-Life 2 mod. I successfully implemented
> it in a small project first to make sure I had all of the linker and include
> stuff done correctly. I'm also using the newest versions of luabind, boost
> and lua (because I had the same issue with the version on the Nuclex
> tutorial version).
> I get compiler errors when I include luabind.hpp. Here's the include code:
> #include "cbase.h"
> #include "lua_luahandle.h"
> #include "KeyValues.h"
> #include "filesystem.h"
> #include "luabind/luabind.hpp"
> // memdbgon must be the last include file in a .cpp file!!!
> #include "tier0/memdbgon.h"
>
> And here's the first ever it generates (there are over 100 errors all in the
> same function_template file):
> Error 2 error C2143: syntax error : missing ';' before 'namespace'
> c:\project02\src\lua\boost\boost\function\function_template.hpp 80 Server
> Episodic
> I get these errors unless I put then luabind include before the cbase
> include. When I do that, it starts acting strange in another way. I get the
> error:
> Error 3 error C2653: 'luabind' : is not a class or namespace name
> c:\project02\src\game\server\lua_luahandle.cpp 32 Server Episodic
> Also, intellisense can see the luabind namespace but when I type it and use
> the scope operator ( :: ) to see what's in it,
> only disable_super_deprecation is visible. Even so, when I compile, it still
> doesn't recognise luabind as a namespace.
> I've quadruple checked my linker and include stuff and have tried different
> versions. I've created a new project and given it the same linker and
> include setup and it works fine. What could I be doing wrong and how can I
> fix it?
> I really appreciate any help. Just throw any ideas you have at me because
> I'm all out. Thanks :)
> ------------------------------------------------------------------------------
>
> _______________________________________________
> luabind-user mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/luabind-user
>
>

------------------------------------------------------------------------------
_______________________________________________
luabind-user mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/luabind-user