From: tlaronde@polynum.com
To: ori@eigenstate.org
Cc: 9front@9front.org
Subject: Re: [9front] putc/fputc incorrect return?
Date: Thu, 9 Jul 2020 20:29:24 +0200 [thread overview]
Message-ID: <20200709182924.GA465@polynum.com> (raw)
In-Reply-To: <8FE0EC1508CC89E5C8EC750F4FFAE0FB@eigenstate.org>
On Thu, Jul 09, 2020 at 09:55:08AM -0700, ori@eigenstate.org wrote:
> > Hello,
> >
> > On Thu, Jul 09, 2020 at 07:27:13AM -0700, ori@eigenstate.org wrote:
> >>
> >> > I write, say 0xaa, it returns 0xffffffaa. So when comparing, this
> >> > failed.
> >> >
> >> > But the problem is that if I write 0xff it returns 0xffffffff that is
> >> > EOF...
> >> >
> >> > Isn't putc/fputc supposed to return a "char" as a value that is
> >> > 0x000000nn so precisely one can differenciate from EOF error?
> >>
> >> Hey -- thanks for the report, but I can't reproduce your issue.
> >> Here's my test code:
> >>
> >> #include <stdio.h>
> >>
> >> int
> >> main(int argc, char **argv)
> >> {
> >> printf("\n'%x'\n", putc(0xaa, stdout));
> >> return 0;
> >> }
> >>
> >> It prints
> >> <junk>
> >> 'aa'
> >>
> >> I'm running on 9front tip, on amd64.
> >
> > Yep, if I compile just this, I get the same and the correct result.
> >
> > But if I print the returned value in the kerTeX code, I get the
> > promotion ("0xffffffaa") (whether calling putc or fputc)...
> >
> > I will have to try to reduce the code to the strict minimum to
> > understand what the hell is going on (it works everywhere and it used to
> > work under 9front too).
> >
> > But there is a fair amount of cascading cpp substitutions due to the
> > pseudo-pascal to raw C dance plus system patching and it triggers something...
> >
> > And (last minute memory), it tries to use registers too (I will need to
> > test this too to see if that makes a difference).
>
> If you can post the code somewhere, I can also take a look.
Thank you, but I will have to reduce it because with the pecularities of
RISK (the compilation framework) and the pecularities of the TeX web-to-raw-C
translation process, you will waste a significant amount of time just to get
your way around before succeeding to tackle the problem.
BTW, I tried to truss (with the acid program) the binary, but it gives
absolutely no clue. I hit the problem with classic printf bisection on
the resulting C files.
I will return back to it this week-end and will post an update (whether
the hit on the core or some simplified code exhibiting the problem) at
the begining of next week.
Best,
--
Thierry Laronde <tlaronde +AT+ polynum +dot+ com>
http://www.kergis.com/
http://www.sbfa.fr/
Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C
next prev parent reply other threads:[~2020-07-09 18:29 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-09 8:21 tlaronde
2020-07-09 14:27 ` [9front] " ori
2020-07-09 16:17 ` tlaronde
2020-07-09 16:55 ` ori
2020-07-09 18:29 ` tlaronde [this message]
2020-07-09 18:39 ` ori
2020-07-11 14:39 ` [FOUND] [9front] putc/fputc incorrect return tlaronde
2020-07-11 15:45 ` ori
2020-07-11 16:43 ` tlaronde
2020-07-13 10:36 ` tlaronde
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=20200709182924.GA465@polynum.com \
--to=tlaronde@polynum.com \
--cc=9front@9front.org \
--cc=ori@eigenstate.org \
/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;
as well as URLs for NNTP newsgroup(s).