On Fri, 19 Jan 2024 19:42:20 GMT, Daniel Jeliński <djelin...@openjdk.org> wrote:

> 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?

The previous fix was a bit too hacky for my liking, so I decided to rework it 
by fixing the order in which the labels are defined instead. Additionally, it's 
way too easy for the previous fix to be undone by newer commits, since it isn't 
obvious at all why it was done (Also motivated by Phil's rejection of the same 
fix within awt)

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

PR Comment: https://git.openjdk.org/jdk/pull/16682#issuecomment-1902540303

Reply via email to