From: Ivan Zakharyaschev <imz@altlinux.org>
To: Alexey Tourbin <alexey.tourbin@gmail.com>
Cc: "Миша мужчина" <shigorin@gmail.com>,
"Другие мужчины" <devel@lists.altlinux.org>
Subject: Re: [devel] re-writing GNU C extensions
Date: Sun, 31 Jan 2016 02:28:58 +0300 (MSK)
Message-ID: <alpine.LFD.2.20.1601310147590.3543@ovicaa.localdomain> (raw)
In-Reply-To: <CA+qzenm5Aou_tmjMymQXmVQ-Ks5L24mDtHus3FSsi0y9=b-DmA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 3983 bytes --]
On Sun, 31 Jan 2016, Alexey Tourbin wrote:
> Мужчина, прежде чем переходить к поэтапному планированию, вы должны были
> убедиться в принципиальной осуществимости сабжа, rewritng GNU C extensions.
Сужение задачи до кода, где не берутся указатели на вложенные функции,
было понятно сразу. Проверил -- в сообщениях в devel такое уточнение не
прозвучало, что неправильно, конечно; теперь исправлено, хоть и
"напоследок".
> Я вам доказываю, что сабж в принципе неосуществим в достаточно широком
> классе случаев.
> Так, техника трамполайнов неосуществима на стадии компиляции. Поэтому
Хорошо.
> вы не сможете
> избавиться от всех вложенных функций, даже если вы вскоре разберётесь
> с механикой
> редактирования AST в language-c.
Если порассуждать теоретически пока на эту тему: даже с задачей в общей
постановке какой-то путь можно увидеть, учитывая, что мы имеем дело с
репозиторием open-source проектов. Где-то уже имеется упомянутый Кириллом
вариант функции вроде qsort_r; где нет (но нужно, потому что в функцию
передали указатель на вложенную функцию где-то, где её использовали) --
можно механически породить такой вариант на C. Осуществимо, но анализ
нельзя ограничить одним C translation unit или даже пакетом.
Я это пишу не ради спора, с тем, что:
> Так, техника трамполайнов неосуществима на стадии компиляции. Поэтому
а чтобы записать моё понимание осуществимого направления по этому делу для
тех, кто может этим интересоваться. Для практических целей это пока не
нужно.
>> Да, пока хороших идей по 2) нет -- как хорошо развернуть такой код на этапе
>> компиляции. Если будут у кого-нибудь продуманные предложения, интересно их
>> узнать.
>
> Мужчина, то есть вы хотите получать деньги за свою работу, которая,
> как заранее известно,
> ни к чему не ведет, кроме обмена умными высказываниями. Сматывайте удочки.
Сборка Sisyphus на платформах без GCC.
>> Пока задачи решать 2) у нас нет, потому что мы хотим продвинуться в том,
>> чтобы уметь собирать не-GCC те пакеты, которые в Sisyphus успешно
>> собираются. А trampolines и executable stack в Sisyphus не пропускаются --
>> glebfm@ рассказывал:
>
> Напоследок вы сужаете постановку задачи, ссылаясь на авторитетные
> мнения сельских дедов,
> которые доводят до нашего сведения, что использовать трамполайны
> строго запрещается.
Best reagrds,
Ivan
next prev parent reply other threads:[~2016-01-30 23:28 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-30 6:56 Alexey Tourbin
2016-01-30 19:26 ` Kirill A. Shutemov
2016-01-30 20:20 ` Ivan Zakharyaschev
2016-01-30 22:04 ` Alexey Tourbin
2016-01-30 23:28 ` Ivan Zakharyaschev [this message]
2016-01-31 4:09 ` Hihin Ruslan
2016-01-31 13:15 ` Sergey Y. Afonin
2016-01-31 22:04 ` Aleksey Novodvorsky
2016-01-31 9:12 ` Alexey Gladkov
2016-01-31 9:22 ` Ivan Zakharyaschev
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=alpine.LFD.2.20.1601310147590.3543@ovicaa.localdomain \
--to=imz@altlinux.org \
--cc=alexey.tourbin@gmail.com \
--cc=devel@lists.altlinux.org \
--cc=shigorin@gmail.com \
/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
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git