From: rotherme@bcstec.ca.boeing.com (Pete Rothermel)
Newsgroups: comp.lang.c++
Subject: Cfront Problem with +w Option
Keywords: Cfront Sun +w
Date: 1 Oct 92 22:31:13 GMT
Organization: Boeing Computer Services, Seattle

I recently compiled some code that I maintain with
the +w option just to see what would happen. This
is with SUN version of 2.1. I was surprized to see
that all of the virtual member functions with the
definitions in the class defintion, were NOT being
inlined. Many of these were just access function
that were just returning the value of a data member.

Do other compiler do this as well?

I also had a compiler crash. Anybody have success with
the +w option on using SUN 2.1 ?

I've included the output of the compilation.

Thanks
Pete R


 ------------------   Compilation Ouput  ---------------

"AList.h", line 58: warning: cannot inline AList::defined() in this expression
"AList.h", line 58: warning: cannot inline AList::defined() in this expression
"AList.h", line 58: warning: virtual function  AList::type() cannot be inlined
"AList.h", line 58: warning: virtual function  AList::length() cannot be inlined
"AList.h", line 87: warning: const cast away: const struct AList *const -> AList *
"AList.h", line 58: warning: virtual function  AList::dumpList() cannot be inlined
"AList.h", line 58: warning: cannot inline AList::memory() in this expression
"AList.h", line 58: warning: cannot inline AList::memory() in this expression
"AList.h", line 58: warning: virtual function  AList::~AList() cannot be inlined
"AList.h", line 58: warning: cannot inline AList::memory() in this expression
"AList.h", line 58: warning:  AList::store() too largefor inlining
"AList.h", line 58: warning: cannot inline AList::memory() in this expression
"AList.h", line 58: warning: cannot inline AList::mydata() in this expression
"AList.h", line 58: warning: cannot inline AList::mydata() in this expression
"RecAtom.h", line 145: warning:  RecAtom::sval() too large for inlining
"RecAtom.h", line 162: warning:  RecAtom::ival() too large for inlining
"RecFileAtom.h", line 48: warning:  RecAtom::sval() too complex for inlining
"RecFileAtom.h", line 48: warning: out-of-line copy of  RecAtom::sval() created
"RecFileAtom.h", line 48: warning:  RecAtom::ival() too complex for inlining
"RecFileAtom.h", line 48: warning: out-of-line copy of  RecAtom::ival() created
"RecFileAtom.h", line 91: warning:  RecFileAtom::RecFileAtom() too large for inlining
"RecFileAtom.h", line 100: warning:  RecFileAtom::RecFileAtom() too large for inlining
"RecList.h", line 25: warning: virtual function  RecList::type() cannot be inlined
"RecList.h", line 25: warning: virtual function  RecList::size() cannot be inlined
"RecList.h", line 25: warning: virtual function  RecList::length() cannot be inlined
"RecList.h", line 63: warning:  RecList::RecList() too large for inlining
"AMessBundle.h", line 83: warning:  AMessBundle::AMessBundle() too large for inlining
"AMessBundle.h", line 92: warning:  AMessBundle::AMessBundle() too large for inlining
"AMessBundle.h", line 107: warning:  AMessBundle::AMessBundle() too large for inlining
"ATimeout.h", line 21: warning:  initializer for non-const reference not an lvalue (anachronism)
"ATimeout.h", line 22: warning:  initializer for non-const reference not an lvalue (anachronism)
"ADialogue.h", line 16: warning:  ADialogue::~ADialogue() too large for inlining
"ADialogue.h", line 87: warning:  ADialogue::ADialogue() too large for inlining
"ADialogue.h", line 97: warning:  ADialogue::ADialogue() too large for inlining
"ArrayAtom.h", line 25: warning: virtual function  ArrayAtom::length() cannot be inlined
"ArrayAtom.h", line 25: warning:  ArrayAtom::index() too large for inlining
"ArrayAtom.h", line 25: warning:  ArrayAtom::ArrayAtom() too large for inlining
"ArrayAtom.h", line 25: warning:  ArrayAtom::ArrayAtom() too large for inlining
"ArrayAtom.h", line 25: warning:  ArrayAtom::refer() too large for inlining
""ArrayAtom.h", line 149: warning:  ArrayAtom::refer() too complex for inlining
"ArrayAtom.h", line 149: warning: out-of-line copy of ArrayAtom::refer() created


"ArrayAtom.h", line 25: internal <<AT&T C++ Translator 2.1.03 08/31/90>> error: bus error (or something nasty like that)

Compilation failed

Newsgroups: comp.lang.c++