All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] GCC 5.x compile errors
Date: Wed, 01 Jul 2015 16:43:54 +0200	[thread overview]
Message-ID: <5593FCAA.4020302@gmail.com> (raw)
In-Reply-To: <20150701075339.59d9f390@lilith>



Am 01.07.2015 um 07:53 schrieb Albert ARIBAUD:
> 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).
> 

the kernel changed it all to "static inline" long time ago. We should do
the same. I'll send a patch to fix it.

-- 
- Daniel

      reply	other threads:[~2015-07-01 14:43 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
2015-07-01 14:43   ` Daniel Schwierzeck [this message]

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=5593FCAA.4020302@gmail.com \
    --to=daniel.schwierzeck@gmail.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.