Thursday, November 21, 2024

Re: Issue with enhanced switch statements in GWT 2.12.1

Could be related to https://github.com/gwtproject/gwt/issues/10044

Fwiw, the issue fixed in 2.12.1 was not about the "case x -> foo" vs "case x -> { foo }" but about enclosing the whole switch inside a block.

On Thursday, November 21, 2024 at 9:28:51 AM UTC+1 ma...@craig-mitchell.com wrote:

> Switch statements can correctly compile without being contained in braces

For me, they compile, but they don't work.  Eg.  This code:

GWT.log("Test 1 - Start");
switch (1) {
  case 1 -> {
    GWT.log("Test 1 - 1");
  }
  case 2 -> {
    GWT.log("Test 1 - 2");
  }
  case 3 -> {
    GWT.log("Test 1 - 3");
  }
}
GWT.log("Test 1 - Done");

GWT.log("Test 2 - Start");
switch (1) {
  case 1 -> GWT.log("Test 2 - 1");
  case 2 -> GWT.log("Test 2 - 2");
  case 3 -> GWT.log("Test 2 - 3");
}
GWT.log("Test 2 - Done");

Will never get to the last "Test 2 - Done" line.  The output will be:
Test 1 - Start
Test 1 - 1
Test 1 - Done
Test 2 - Start
Test 2 - 1

Is this a known issue?

Thanks.

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/2ce64938-712b-4d56-902a-5a922a5d158dn%40googlegroups.com.

No comments:

Post a Comment