public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] GCC 5.x compile errors
Date: Wed, 1 Jul 2015 07:53:39 +0200	[thread overview]
Message-ID: <20150701075339.59d9f390@lilith> (raw)
In-Reply-To: <F9C551623D2CBB4C9488801D14F864C6B9FB1358@ex-mb1.corp.adtran.com>

Hello ANDY,

On Tue, 30 Jun 2015 22:02:38 +0000, ANDY KENNEDY
<ANDY.KENNEDY@adtran.com> wrote:
> Attempted to build u-boot with gcc 5.x for mipsel 32.  Result was that
> I get brokenness around arch/mips/include/asm/io.h and
> arch/mips/include/asm/system.h.  The source lines all look something
> like:
> 
> extern inline void func()
> {
> 	func text ;
> }
> 
> Question:  Is that valid C text?  I have never seen such.  Also, what
> does this mean from a header file?  The way I read this is
> 
> extern = the following declare exists in global space (no code here)
> 
> inline = use this function definition in line in place of creating a
> 	   text ref section
> 
> I would expect these two to be mutually exclusive????
> 
> Please enlighten me!

Actually, extern vs static takes a meaning for inline functions
different from the one for traditional non-inline ones.

	"If you specify both inline and extern in the function
	definition, then the definition is used only for inlining.
	In no case is the function compiled on its own, not even
	if you refer to its address explicitly. Such an address
	becomes an external reference, as if you had only declared
	the function, and had not defined it."

See https://gcc.gnu.org/onlinedocs/gcc/Inline.html for all the gory
details on inline functions (this is for the latest version; if you're
working with a specific, older, gcc version, look up the corresponding
page, in case subtle changes were introduced).

> Thanks,
> Andy

Amicalement,
-- 
Albert.

  reply	other threads:[~2015-07-01  5:53 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-30 22:02 [U-Boot] GCC 5.x compile errors ANDY KENNEDY
2015-07-01  5:53 ` Albert ARIBAUD [this message]
2015-07-01 14:43   ` Daniel Schwierzeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150701075339.59d9f390@lilith \
    --to=albert.u.boot@aribaud.net \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox