Inlining failed, large function growth limit reached

Posted on 2010-09-14
Medium Priority
Last Modified: 2012-05-10
Hey guys,

Our build is getting a warning about inlining failing due to a large function growth limit being reached (gcc compiler).  The code causing the warning is a auto generated framework for our industry (so it's probably not going to be changed).  Anyway, i was hoping that someone could provide insight on the implications of this warning even if we can't change the code...

(1) what specificly does the warning mean?
(2) can I assume that the result of the inlining failing is simply that the function is defined as a standard function rather than inlined (i.e. placed throughout the code in full code form)?

Thanks in advance,

Question by:w00te
  • 2
LVL 53

Accepted Solution

Infinity08 earned 2000 total points
ID: 33672486
large-function-growth is used to limit the code increase due to inlining. When the limit is reached, the warning you get is emitted.

It's just a warning though, so you can ignore it. But maybe you should consider splitting the code up into smaller functions, and only inline small frequently used functions.
LVL 12

Author Comment

ID: 33672602
Thanks for the info :) Like I said, its an existing industry framework so I can't really touch it.  Its comforting to know nothing too bad is happening besides some lost efficiency though, haha.  It had me worried.

LVL 53

Expert Comment

ID: 33672643
Nothing bad is happening, no. But it does indicate an issue with the code - namely that functions are too big, which might degrade performance. But if that's something you cannot touch, then you'll have to live with the warnings I guess ;)

It's fun maintaining big old code bases isn't it ? Especially if they throw in a lot of generated code.

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

IntroductionThis article is the second in a three part article series on the Visual Studio 2008 Debugger.  It provides tips in setting and using breakpoints. If not familiar with this debugger, you can find a basic introduction in the EE article loc…
Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

597 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question