From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21462 invoked by alias); 1 Jul 2013 09:14:45 -0000 Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org Received: (qmail 21426 invoked by uid 89); 1 Jul 2013 09:14:44 -0000 X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_YE,SPF_PASS,TW_CP autolearn=ham version=3.3.1 Received: from mail-pd0-f176.google.com (HELO mail-pd0-f176.google.com) (209.85.192.176) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Mon, 01 Jul 2013 09:14:43 +0000 Received: by mail-pd0-f176.google.com with SMTP id t12so2455089pdi.35 for ; Mon, 01 Jul 2013 02:14:42 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.66.134.132 with SMTP id pk4mr20989349pab.20.1372670082247; Mon, 01 Jul 2013 02:14:42 -0700 (PDT) Received: by 10.66.126.9 with HTTP; Mon, 1 Jul 2013 02:14:42 -0700 (PDT) In-Reply-To: References: Date: Mon, 01 Jul 2013 09:14:00 -0000 Message-ID: Subject: Re: lang.opts help From: Philip Herron To: =?ISO-8859-1?Q?Manuel_L=F3pez=2DIb=E1=F1ez?= Cc: "gcc-help@gcc.gnu.org" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2013-07/txt/msg00005.txt.bz2 Yeah there is a patch in the list somewhere from ages ago where me and Andi Hellmund added huge front-end documentation but it never got reviewed. I think i need to resurrect this again this week and fix it up and get it i= n. --Phil On 30 June 2013 22:51, Manuel L=F3pez-Ib=E1=F1ez wr= ote: > Perhaps it should be documented somewhere, but where? To be honest, if > I had to implement a GCC FE, I wouldn't even know where to start > looking. > > BTW, don't look to Fortran for a good example of how to handle > options. Fortran duplicates the common machinery, which does a lot > more than the Fortran implementation. The same applies to diagnostics, > don't follow Fortran, use the common machinery. In general, the C++ FE > is probably the most modern and the best example to look at. > > > > On 30 June 2013 22:17, Philip Herron wrote: >> Thanks so much i just never noticed this lang hook just needed to >> return the option_lang_mask and now its all fine. >> >> Thanks >> >> --Phil >> >> On 28 June 2013 19:46, Manuel L=F3pez-Ib=E1=F1ez = wrote: >>>> I have been having trouble with my lang.opts i keep getting: >>>> >>>> hilips-MacBook:gccpy-build redbrain$ gccpy -O0 -fdump-tree-gimple t.py >>>> -o t.o -fpy-dump-dot -fpy-gen-main >>>> gpy1: warning: command line option =3D91-fpy-dump-dot=3D92 is valid fo= r Python >>>> but not for [enabled by default] >>>> gpy1: warning: command line option =3D91-fpy-gen-main=3D92 is valid fo= r Python >>>> but not for [enabled by default] >>>> gpy1: warning: command line option >>>> =3D91-L/usr/local/lib/gcc/x86_64-apple-darwin12.3.0/4.8.0=3D92 is vali= d for >>>> Go/Python but not for [enabled by default] >>>> gpy1: warning: command line option >>>> =3D91-L/usr/local/lib/gcc/x86_64-apple-darwin12.3.0/4.8.0/../../..=3D9= 2 is >>>> valid for Go/Python but not for [enabled by default] >>> >>> Does your python_handle_option returns true for recognized options? >>> >>> When you build, in the build/gcc/ directory there is an options.c >>> file. Does it mention Python in lang_names? Do the options have the >>> CL_Python flag? >>> >>> Have you defined a hook that returns the lang_mask for Python? See Fort= ran: >>> >>> fortran/f95-lang.c:#define LANG_HOOKS_OPTION_LANG_MASK gfc_option_lang= _mask >>> >>> BTW, you don't need to re-define Common options unless you want to >>> completely change their meaning, which normally is a bad idea. >>> Normally you can just re-use the results returned by the common >>> options machinery for your own purposes. >>> >>> Cheers, >>> >>> Manuel.