This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
> I am currently running into a problem with the function abs and the
> header std_cstdlib.h. This file contains the lines:
>
> namespace std
> {
> using ::abs
> }
>
> The problem is that my system's stdlib.h header file is smart enough to
> not do an extern declaration for abs if it is in C++ mode and instead
> does an inline declaration of the abs function. It only does an extern
> declaration if it is in C mode. Thus I get an error on the 'using ::abs'
> line. [...proposed fix removed for the moment...]
Hi Steve,
Could I get some more information on this problem before we hack the
library or you add a fixinclude? ;-)
The line of code in question has been present since Jan 02. How long
have you seen this problem on mainline?
Does the standard say that ``using ::abs'' will not pull an inline
into the new namespace scope exactly as it would an extern? I'm
surprised to hear that. I.e. the following compiles for me with
mainline:
inline void a(void) {}
namespace std { using ::a; }
Thus, I'm wondering what is different in your case. Could you post
for us the exact declaration found in your system's <stdlib.h> in C++
mode?
Regards,
Loren
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |