From: Jan Nieuwenhuizen <janneke@gnu.org>
To: Arne Babenhauserheide <arne_bab@web.de>
Cc: guix-devel@gnu.org, guile-user@gnu.org, epsilon-devel@gnu.org,
bootstrappable@freelists.org
Subject: Re: Mes 0.10 released
Date: Mon, 11 Sep 2017 19:29:38 +0200 [thread overview]
Message-ID: <87fubtp2il.fsf@gnu.org> (raw)
In-Reply-To: <87vakpdumv.fsf@web.de> (Arne Babenhauserheide's message of "Mon, 11 Sep 2017 19:14:53 +0200")
Arne Babenhauserheide writes:
> Jan Nieuwenhuizen <janneke@gnu.org> writes:
>
>> I am pleased to announce the release of Mes 0.10, representing 82
>> commits over 6 weeks. Mescc now compiles a bootstrappable-modified
>> TinyCC into a mes-tcc that in turn can successfully compile a trivial
>> C program.
>
> Nice! How big are your changes to TinyCC?
About this big:
$ gl| head -30
6773110e lotsa debug printing
429e4366 bootstrappable: workaround mescc bugs.
5881b4cd bootstrap build scripts
2712a934 bootstrappable: struct by value assign.
54e9ae5b bootstrappable: constant pointer arithmetic.
10b7a57b bootstrappable: pointer arithmetic.
25f6dfa1 bootstrappable: mescc: use _start.
50af7c8c bootstrappable: gcc libraries, elf entry.
d783ec19 bootstrappable: uint16_t in struct on heap.
f0aed53b bootstrappable: nested foo ? bar : baz.
60a3181f bootstrappable: Complex field access.
13cc75c8 bootstrappable: str[r]chr (str, 0).
fc977c55 bootstrappable: sizeof *type.
2ed23278 bootstrappable: for (;;).
7ab3f511 bootstrappable: Multi-line strings.
871dc3bb bootstrappable: foo = bar = baz.
9413c474 bootstrappable: switch (*foo = *++bar).
a51c6757 bootstrappable: HAVE_BITFIELD.
ca8aa2f4 bootstrappable: HAVE_FLOAT
eff5bcf9 bootstrappable: char foo[][].
299e04fe bootstrappable: foo ()->bar.
cb487ef6 bootstrappable: Comma operator.
df8f57cf bootstrappable: Heterogeneous switch case.
4cd6da01 bootstrappable: Heterogeneous initializer list.
25d426a0 bootstrappable: Outline enums, structs, unions.
For details, see
[8] https://gitlab.com/janneke/tinycc
TinyCC uses (imho) unnecessarily complex C constructs. Therefore it is (imho)
not too well suited as a bootstrap dependency, at least not in an
unpatched state.
Pragmatically working towards a first full source boostrap success, I
have been patching TinyCC and simultaneously adding unfriendly
constructs to Mescc. So, not all patches are necessary (for Mescc) but
depending on what the TinyCC devs want we could take bootstrappability
even much further. Dunno ;-)
As long as we target TinyCC, I intend to try to upstream all patches
that Mescc needs. Much work to do.
janneke
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ® http://AvatarAcademy.com
next prev parent reply other threads:[~2017-09-11 17:29 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-10 20:29 Mes 0.10 released Jan Nieuwenhuizen
2017-09-11 17:14 ` Arne Babenhauserheide
2017-09-11 17:29 ` Jan Nieuwenhuizen [this message]
2017-09-11 22:08 ` Arne Babenhauserheide
2017-09-12 5:15 ` Jan Nieuwenhuizen
2017-09-12 17:08 ` Arne Babenhauserheide
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
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fubtp2il.fsf@gnu.org \
--to=janneke@gnu.org \
--cc=arne_bab@web.de \
--cc=bootstrappable@freelists.org \
--cc=epsilon-devel@gnu.org \
--cc=guile-user@gnu.org \
--cc=guix-devel@gnu.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 read-only IMAP folder(s) and NNTP newsgroup(s).