[comp.lang.c++] when is an inline not an inline?

brian@uw-june.UUCP (Brian Bershad) (12/01/87)

Under what circumstances will a function declared inline be emitted
as a private static function for the file in which it is referenced
without comment from the compiler?


I have an application with a large number of inline functions.  When
I coordinated all of the inlines into a single file, many of
them stopped being inline.  The functions themselves are "inlineable",
since they were inlined properly before being coalesced.


-- 
brian@june.cs.washington.edu                	Brian Bershad
{ihnp4,decvax,ucbvax}!uw-beaver!uw-june!brian   Dept. of Computer Science, FR-35
						University of Washington
                                                Seattle, WA 98195

bs@alice.UUCP (12/02/87)

 > Under what circumstances will a function declared inline be emitted
 > as a private static function for the file in which it is referenced
 > without comment from the compiler?

When an inline is used twice in a single expression, when the address
of an inline is taken, or when an inline is declared virtual.

The two last cases are fundamental, the first a peculiarity of a
particular implementation.