Joern Rennecke <amyl...@spamcop.net> writes: > Quoting Ian Lance Taylor <i...@google.com>: >> Joern Rennecke <amyl...@spamcop.net> writes: >>> * config/sh/sh.c (sh_attribute_table): Use extern in forward >>> declaration. >>> Common issue with declaring/defining const variables in C++. >> >> I've been doing this as >> >> #ifdef __cplusplus >> extern >> #endif > > These #ifdefs sprinkled over the code are awkward. Could we use a #define > for this? E.g. put in system.h > #ifdef __cplusplus > #define CONST_VAR_DECL extern const > #else > #define CONST_VAR_DECL const > #endif
Yes, that is certainly the way to go if it is in fact not safe to use "extern const int i = 1;" for all C compilers. I hadn't planned to deal with this issue yet, but since you bring it up, we should decide whether that construct is safe, or whether we need the macro. Ian