On Fri, 19 Jan 2024 01:57:40 GMT, Julian Waters <jwat...@openjdk.org> wrote:

>> I regret not actually addressing the issues with the goto labels in 
>> https://github.com/openjdk/jdk/pull/15996, where initialization of locals in 
>> sspi were jumped over by gotos to a certain label. I changed the 
>> initializations into split declarations and assignments in 
>> https://github.com/openjdk/jdk/pull/15996, but this is simply a hack and 
>> does not address the real issue of gotos jumping over locals. I've as such 
>> fixed the issues with them properly this time, by simply deleting the labels 
>> and duplicating the code where they're used. As mentioned, this 
>> unfortunately does increase duplicate code, but is the cleanest solution I 
>> could come up with for the labels
>
> Julian Waters has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   std:: qualifier sspi.cpp

AFAICT these changes are not necessary.

### C++11 §6.7/3:

> [...] A program that jumps from a point where a variable with automatic 
> storage duration is not in scope to a point where it is in scope is 
> ill-formed **unless the variable has scalar type**, class type with a trivial 
> default constructor and a trivial destructor, a cv-qualified version of one 
> of these types, or an array of one of the preceding types and is declared 
> without an initializer (8.5).

all the variables jumped over are scalars (ints and pointers), so the code is 
correct. Am I missing something?

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

PR Review: https://git.openjdk.org/jdk/pull/16682#pullrequestreview-1833557310

Reply via email to