Martin's Tex-Blog

Posts on programming and generally technical topics

Linkage of templates

leave a comment »

I would like to share observation of another non standard behavior found in Visual Studio compiler. According to C++ Templates Complete Guide: “class templates cannot share a name with a different kind of entity”, below code:

int X;
class X {    

gives following error with g++ 4.9:

main.cpp:8:7: error: 'template struct X' redeclared as different kind of symbol
class X {
main.cpp:6:5: note: previous declaration 'int X'
int X;

but with VS2013 compiles just fine.


Written by Marcin

December 28, 2014 at 2:24 am

Posted in Uncategorized

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: