Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C++ Moderated > same name for t...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 4 Topic 9513 of 9593
Post > Topic >>

same name for types and variables

by Oncaphillis <oncaphillis@[EMAIL PROTECTED] > Apr 17, 2008 at 11:39 AM

Hi all,

Working with g++ 3.* I have to include 3rd
party C-headers which tend to use the same
name for typedefs and
variables

e.g:

<snip>
/* test.h
  */

typedef int bar;

struct foo {
   bar bar;
};

</snip>

....which seems to be valid C-code. When I include
these with:

<snip>
extern "C" {
#include <test.h>
};

</snip>

g++ chokes on these identical IDs.

I help myself with including

#ifdef __cplusplus
typedef int bar_t;
struct foo {
   bar_t bar;
};

#else
typedef int bar;
struct foo {
   bar bar;
};
#endif

...which is cumbersome and ugly.

1. Is this behavior part of the standard or a defect
    of GNU C++ ?

2. Is there a more elegant (may be even portable) way
    to compile these C-headers without having to change
    them.

Thanks you for your attention

O.


-- 
      [ See http://www.gotw.ca/resources/clcm.htm
for info about ]
      [ comp.lang.c++.moderated.    First time posters: Do this! ]




 4 Posts in Topic:
same name for types and variables
Oncaphillis <oncaphill  2008-04-17 11:39:21 
Re: same name for types and variables
red floyd <no.spam@[EM  2008-04-18 06:13:15 
Re: same name for types and variables
Marco Manfredini <ok_n  2008-04-18 17:15:07 
Re: same name for types and variables
Oncaphillis <oncaphill  2008-04-18 17:20:00 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Wed May 14 19:16:34 CDT 2008.