On Tue, 7 Mar 2023 05:58:57 GMT, Kim Barrett <kbarr...@openjdk.org> wrote:

>> No I'm comparing the syntax used elsewhere:
>> 
>> DebuggingContext debugging{};
>> 
>> with that used here:
>> 
>> DebuggingContext debugging;
>> 
>> why the braces in most cases but not here?
>
> "syntax used elsewhere" are declarations of local variables initialized with 
> _value initialization_ (which is _default initialization_ for this type).  
> "that used here" is a member variable declaration in the Command class, where 
> the initialization occurs elsewhere (in the constructor of the Command class 
> [*]).  They are entirely different syntactic entities.  Does that help?  Or 
> am I still not understanding your question?
> 
> [*] With C++11, data members can have default initializers, but that's not an 
> approved feature for HotSpot.

Sorry I was fixated on the weirdness (to me) of the {} initialization. I missed 
the fact these were different kinds of declarations.

-------------

PR: https://git.openjdk.org/jdk/pull/12845

Reply via email to