From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18819 invoked by alias); 24 Oct 2011 12:18:38 -0000 Received: (qmail 18809 invoked by uid 22791); 24 Oct 2011 12:18:37 -0000 X-SWARE-Spam-Status: No, hits=-0.7 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC,TO_NO_BRKTS_DYNIP,TVD_RCVD_IP,TW_SV X-Spam-Check-By: sourceware.org Received: from 195-14-0-142.nuxit.net (HELO de558.ispfr.net) (195.14.0.142) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 24 Oct 2011 12:18:19 +0000 Received: from ours.starynkevitch.net ([213.41.244.95] helo=glinka.lesours) by de558.ispfr.net with smtp (Exim 4.72) (envelope-from ) id 1RIJTs-00035v-Oi; Mon, 24 Oct 2011 14:18:16 +0200 Date: Mon, 24 Oct 2011 13:22:00 -0000 From: Basile Starynkevitch To: gcc@gcc.gnu.org Cc: gcc-melt@googlegroups.com Subject: Ann: MELT plugin 0.9.1 for GCC 4.6 Message-Id: <20111024141810.09485ebd77ec5710c026d7ca@starynkevitch.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2011-10/txt/msg00423.txt.bz2 Hello All, It is my pleasure to announce the release of MELT plugin 0.9.1 for GCC 4.6 MELT is a high level domain specific language to ease the development of GCC extensions. See http://gcc-melt.org/ for more. The MELT plugin 0.9.1 for GCC 4.6 (dedicated to the memory of Denis M. Ritchie) is available, as a gzipped source tar archive, from http://gcc-melt.org/melt-0.9.1-plugin-for-gcc-4.6.tgz of size 4127673 bytes and md5sum 5d342073af875296d9aad1bd25aa59f9 (october 24th 2011). It is extracted from MELT branch svn revision 180378. The version number 0.9.1 of the MELT plugin is unrelated to the version of the GCC compiler (4.6) for which it is supposed to work. Bug reports and patches are welcome (to the gcc-melt list). October 24, 2011: Release of MELT plugin 0.9.1 for gcc-4.6 dedicated to the memory of Dennis M. Ritchie http://en.wikipedia.org/wiki/Dennis_Ritchie New features: variadic MELT functions. ======================= A formal arguments list (i.e. formals for LAMBDA or DEFUN) ending with :REST is for variadic functions with a variable number and type of arguments (so :REST in MELT is similar to the ellipsis ... notation in C prototypes). At least one first formal argument should be provided and should be a value. The (VARIADIC ....) macro is used to fetch actual variadic arguments. A variadic cursor is internally maintained to parse the variadic actual arguments. The VARIADIC macro has a sequence of variadic cases. Each variadic case starts with an ordinary [non-variadic] formal arguments list, and has a body which is evaluated for side effects if the current arguments at the cursor position fits into the formal. The last variadic case can also starts with an :ELSE. See also http://groups.google.com/group/gcc-melt/browse_thread/thread/c124ea6af940c08e variadic (DEBUG ....) macro. ============================ Debugging messages should go thru the variadic (DEBUG ...) macro which accepts an arbitrary kind and number of arguments. The DEBUG_MSG macro is obsolete. variadic ADD2OUT function ========================= The ADD2OUT variadic function add to an output (either a file value; or a string buffer values) arbitrary things. Enjoy. Bug reports and patches are welcome. Please send questions and improvements to gcc-melt@googlegroups.com & to the main author basile@starynkevitch.net Regards. -- Basile STARYNKEVITCH http://starynkevitch.net/Basile/ email: basilestarynkevitchnet mobile: +33 6 8501 2359 8, rue de la Faiencerie, 92340 Bourg La Reine, France *** opinions {are only mine, sont seulement les miennes} ***