comp.lang.ada
 help / color / mirror / Atom feed
From: Stephen Leake <stephen_leake@stephe-leake.org>
Subject: Re: Disabling string evaluation in a logging system
Date: Wed, 19 May 2010 05:04:32 -0400
Date: 2010-05-19T05:04:32-04:00	[thread overview]
Message-ID: <82bpccz2hr.fsf@stephe-leake.org> (raw)
In-Reply-To: b55304cc-92ac-467b-a7df-27b80ba6645d@o15g2000vbb.googlegroups.com

dhenry <tfc.duke@gmail.com> writes:

> As Dmitry said, the log level may dynamically change. Therefore,
> inlining in order to let the compiler do the optimization doesn't
> work.

I don't follow this. Inlining is the same as writing the if-test. Given
this:

    procedure Inlined_Log (S : in string; Level : in Level_Type)
    is begin
        if Level > Global_Level then
            put (S);
        end if;
    end Inlined_Log;


then the compiler (with the right switches) should convert this:

    begin
        Inlined_Log (<expression>, A_Log_Level);
    end;

to this:

    begin
        if A_Log_Level > Global_Level then
            put (A_Log_Level);
        end if;
    end;

What is the problem?

-- 
-- Stephe



  reply	other threads:[~2010-05-19  9:04 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-18  7:48 Disabling string evaluation in a logging system dhenry
2010-05-18  8:15 ` Dmitry A. Kazakov
2010-05-18  8:45   ` Dmitry A. Kazakov
2010-05-18  9:45   ` Cyrille
2010-05-18 10:26     ` Dmitry A. Kazakov
2010-05-18 12:10       ` Georg Bauhaus
2010-05-18 12:15         ` Georg Bauhaus
2010-05-18 12:54         ` Dmitry A. Kazakov
2010-05-18  9:32 ` Gautier write-only
2010-05-18  9:37   ` Gautier write-only
2010-05-18 11:27   ` Gautier write-only
2010-05-18 12:18     ` dhenry
2010-05-19  9:04       ` Stephen Leake [this message]
2010-05-19 12:38         ` Dmitry A. Kazakov
2010-05-19 18:02           ` (see below)
2010-05-19 19:08             ` Adam Beneschan
2010-05-18 10:13 ` stefan-lucks
2010-05-18 18:17   ` Jeffrey R. Carter
2010-05-18 18:40 ` tmoran
2010-05-19  7:47   ` dhenry
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox