From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DNS_FROM_AHBL_RHSBL,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_PASS,T_FREEMAIL_FORGED_FROMDOMAIN, T_HEADER_FROM_DIFFERENT_DOMAINS autolearn=no autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version:content-type; bh=6rRfyuThjv6lAYHb16Jz1m/R2RMkMURhl4DyDB6QVJY=; b=zARKUB+Re0929wTXTkcRZqJA351zFJzTsWz0JiQ0yBDM1vRSN6TXDI2yLeOgDS3MJU CljKdN2yBvLnx5yGldCBWzA7jHtzw7UEzUctIgrgG63UpDm0FlgsV8nrER6SbKd1orOi NWLLrGgad0WQFK8KaBPCdIvz7CB/sYfDifOoaiv2ZB2ff+hDFjT+66YelHmbY0m6iHuU 7psioDoYp1zSkiLAtX5mxqjdNYv1cn79NSAdXTEb7qh6BdaevEMPi+c5Hffu4FBqmcNN kBc3/MMzp9r36m1efdTzirColR2oDWIV8EEZvmHfu2T5rXc9L/UnFuvK/oQzcyJobMfM cvcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:date:from:to:cc:subject:in-reply-to :message-id:references:user-agent:mime-version:content-type; bh=6rRfyuThjv6lAYHb16Jz1m/R2RMkMURhl4DyDB6QVJY=; b=i0Hj8Xm2ejOnZbPBlPW+RYWTZtx8rDur0j6e69iKTudyQWlQ7tyTJq83a/mhom13pL zyzRoxGQVYFIdLQET7sJDRDZsMXxBzmUKfDv+mUA2rTFQSlDbWnX6nu3OJs4fKLp5vFK 40Lcc2OAypFBoIUVAVdZnCgChTaje2+2iiG5sR3oYNO9ncZ1Qb5KA4iZ9eRZoUAOaul4 7x0ilRQKMWU4h647kZvpWP/sh/obgpbJYEv6av4s6Nii9QK50aAVVBFxqGek9gKoDFJA f/6aXfJfnXS0VMGm0sAnM5SWRLanVRQiqLJQYzeZI9SCmCI601JkbLZl2orO+XCirx96 r1Ag== X-Gm-Message-State: AG10YOSgXrz5horJ17LJNNBJbrLIOtFWsiY077M9W9fLZPUKNl90N3f34gITTX8kvhD1mQ== X-Received: by 10.112.147.1 with SMTP id tg1mr4690117lbb.119.1454196542293; Sat, 30 Jan 2016 15:29:02 -0800 (PST) Sender: Ivan Zakharyaschev Date: Sun, 31 Jan 2016 02:28:58 +0300 (MSK) From: Ivan Zakharyaschev X-X-Sender: imz@ovicaa.localdomain To: Alexey Tourbin In-Reply-To: Message-ID: References: User-Agent: Alpine 2.20 (LFD 67 2015-01-07) MIME-Version: 1.0 Content-Type: multipart/mixed; BOUNDARY="8323328-20339135-1454196539=:3543" Cc: =?KOI8-R?B?7cnbwSDN1dbeyc7B?= , =?KOI8-R?B?5NLVx8nFIM3V1t7Jztk=?= Subject: Re: [devel] re-writing GNU C extensions X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Jan 2016 23:29:04 -0000 Archived-At: List-Archive: List-Post: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323328-20339135-1454196539=:3543 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8BIT 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 --8323328-20339135-1454196539=:3543--