From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17562 invoked by alias); 9 Jan 2006 16:46:27 -0000 Received: (qmail 17538 invoked by uid 48); 9 Jan 2006 16:46:26 -0000 Date: Mon, 09 Jan 2006 16:46:00 -0000 Message-ID: <20060109164626.17537.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/18540] Jumping into blocks gives error rather than warning In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "tobi at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2006-01/txt/msg00834.txt.bz2 List-Id: ------- Comment #14 from tobi at gcc dot gnu dot org 2006-01-09 16:46 ------- Coming to think of it, I think that while your speedup would work, it would probably be easier and even faster if we kept track of the enclosing blocks while building the blocks and labels, so that the data structure would look something like this: gfc_st_label *label -> gfc_code *block -> gfc_code *enclosing_block ... or maybe gfc_st_label *label -> gfc_code *statement -> gfc_code *block -> gfc_code *enclosing_block ... (where label is a statement label, statement the statement its attached to, block the block containing the statement [this would e.g. be an if], etc.) Then the time taken by the validation of the blocks would still scale linearly with the number of blocks, but the length of the blocks would no longer play a role, leaving us with linear behavior. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18540