comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Quick question regarding limited type return syntax
Date: Fri, 1 Aug 2014 14:23:43 -0500
Date: 2014-08-01T14:23:43-05:00	[thread overview]
Message-ID: <lrgpg1$40g$1@loke.gir.dk> (raw)
In-Reply-To: lrfh8k$rpi$1@dont-email.me

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1176 bytes --]

"J-P. Rosen" <rosen@adalog.fr> wrote in message 
news:lrfh8k$rpi$1@dont-email.me...
> Le 01/08/2014 04:12, Randy Brukardt a écrit :
>> t's annoying that we couldn't get this "explicit default-initialization"
>> syntax more widely used. I prefer to ensure that everything is properly
>> initialized, but sometimes the default value is good enough. It would be
>> nice to be able to specify that:
>>
>>       Obj : My_Type := <>;
>> or maybe
>>       Obj : My_Type := (<>);
>>
>> so that I could verify that every object is either initialized or 
>> explicitly
>> left default initialized.
>
> One of my clients has a rule that every user-defined type must provide
> an associated constant for the default value (and of course, AdaControl
> can enforce that rule). Then it is enough to say that every variable
> must be initialized.
>
> Seems close enough to what you want...

Not quite, since

    Default_Frobnitz : constant Frobnitz_Type;

is illegal. You could write:


    Junk_Frobnitz : Frobnitz_Type; -- To get this default-initialized.
    Default_Frobnitz : constant Frobnitz_Type := Junk_Frobnitz;

but that's awful.

                                         Randy.


  reply	other threads:[~2014-08-01 19:23 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-30 23:51 Quick question regarding limited type return syntax NiGHTS
2014-07-31  0:02 ` Adam Beneschan
2014-07-31  0:56   ` NiGHTS
2014-07-31  0:48 ` Shark8
2014-07-31  1:00   ` NiGHTS
2014-07-31  1:29     ` Adam Beneschan
2014-07-31  1:38       ` NiGHTS
2014-07-31  4:01         ` Shark8
2014-08-01  2:12       ` Randy Brukardt
2014-08-01  3:40         ` Shark8
2014-08-01  7:57         ` J-P. Rosen
2014-08-01 19:23           ` Randy Brukardt [this message]
2014-08-01 19:37             ` J-P. Rosen
2014-08-01 20:53             ` Shark8
2014-08-02  7:11               ` Niklas Holsti
2014-08-02  7:34                 ` Dmitry A. Kazakov
2014-08-02 13:20                   ` Robert A Duff
2014-08-02 13:44                     ` Dmitry A. Kazakov
2014-08-02 14:34                       ` Robert A Duff
2014-08-02 16:56                         ` Dmitry A. Kazakov
2014-08-02 20:35                           ` Niklas Holsti
2014-08-03  7:30                             ` Dmitry A. Kazakov
2014-08-04  9:24                               ` Niklas Holsti
2014-08-04 10:42                                 ` G.B.
2014-08-04 11:39                                   ` Peter Chapin
2014-08-04 17:49                                     ` Niklas Holsti
2014-08-04 11:36                                 ` Peter Chapin
2014-08-04 12:43                                 ` Dmitry A. Kazakov
2014-08-04 16:19                                   ` G.B.
2014-08-04 16:38                                     ` Dmitry A. Kazakov
2014-08-04 16:51                                       ` G.B.
2014-08-04 17:23                                         ` Dmitry A. Kazakov
2014-08-04 19:37                                   ` Niklas Holsti
2014-08-05  8:30                                     ` Dmitry A. Kazakov
2014-08-05 19:24                                       ` Randy Brukardt
2014-08-03 16:35                           ` Robert A Duff
2014-08-02  8:02               ` Jacob Sparre Andersen
2014-08-02 19:20                 ` Shark8
2014-08-03 16:07                   ` Default values (Was: Quick question regarding limited type return syntax) Jacob Sparre Andersen
2014-08-04 21:29                     ` Randy Brukardt
replies disabled

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