Article View: pl.comp.lang.c
Article #309579Re: Błąd kompilacji: Control reaches end of non-void function
From: Wojciech Muła
Date: Wed, 03 Jan 2018 12:21
Date: Wed, 03 Jan 2018 12:21
31 lines
2130 bytes
2130 bytes
On Wednesday, January 3, 2018 at 10:05:43 AM UTC+1, m.laba...@gmail.com wrote:
> Witam,
>
> moje 3 grosze w temacie:
>
> > unsigned long sp(void) {
> > asm("movl %esp, %eax");
> > }
>
> Moze latwiej byloby wykorzystac kod bez asm'a:
>
> #include <stdio.h>
> #include <stdlib.h>
> void * sp(void) {
> void * volatile result = (void *)(&result);
> return result;
> }
> int main(void) {
> printf("sp=%p\n", sp());
> return EXIT_SUCCESS;
> }
Bardzo sprytne, ale trzeba dodać sizeof(result),
bo inaczej jest:
leaq -8(%rsp), %rax
movq %rax, -8(%rsp)
movq -8(%rsp), %rax
ret
w.
Technical Details
Message-ID:
<0e3a111e-e4fb-48fb-9623-7ac68f4e5996@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!m31no6081650qtf.0!news-out.google.com!t48ni2453qtc.1!nntp.google.com!g35no6079826qtk.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<12c62252-1856-414e-9237-61a257bf9d99@googlegroups.com> <417dc325-da47-457f-ac5f-54bf79e63223@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 10.237.39.153 with SMTP id a25mr777145qtd.0.1514982071362; Wed, 03 Jan 2018 04:21:11 -0800 (PST) X-Received: by 10.31.2.144 with SMTP id 138mr131927vkc.5.1514982070927; Wed, 03 Jan 2018 04:21:10 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!m31no6081650qtf.0!news-out.google.com!t48ni2453qtc.1!nntp.google.com!g35no6079826qtk.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.c Date: Wed, 3 Jan 2018 04:21:10 -0800 (PST) In-Reply-To: <417dc325-da47-457f-ac5f-54bf79e63223@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=131.228.32.167; posting-account=VFwkXwoAAADdT4-lLKRZrMYkTjizGoyn NNTP-Posting-Host: 131.228.32.167 References: <12c62252-1856-414e-9237-61a257bf9d99@googlegroups.com> <417dc325-da47-457f-ac5f-54bf79e63223@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <0e3a111e-e4fb-48fb-9623-7ac68f4e5996@googlegroups.com> Subject: Re: Błąd kompilacji: Control reaches end of non-void function From: Wojciech Muła <wojciech_mula@poczta.onet.pl> Injection-Date: Wed, 03 Jan 2018 12:21:11 +0000 Lines: 31 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit