This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug libstdc++/18644] [3.3/3.4/4.0 regression] -Wsynth warning in <complex>


------- Additional Comments From bangerth at dealii dot org  2004-11-25 19:19 -------
I am not an expert in ABI questions, but in my naive world constructors 
are somewhat different than regular functions if they are declared 
inline (and synthesized constructors always are): 
 
- you can't take the address of a constructor 
- (old) code linked against a new libstdc++ with a new constructor would  
  be fine since the old synthesized constructor had been inlined 
- (new) code linked against an old libstdc++ without the new constructor 
  would also be fine if the new constructor were declared inline, since 
  then no call to the respective library function would be attempted 
 
IOW, the result is a situation where programs couldn't tell the difference. 
The fact that you can't take the address of a constructor makes the situation 
markedly different from the case of a regular function. 
 
W. 

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18644


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]