Non-Asynchronous Futures not working?

Oxygene’s non-asynchronous future type doesn’t seem to work. Below code shows that the future value retrieval is BLOCKED indefinitely at the line var sum := num1 + num2;

ConsoleApplication.7z (5.7 KB)

     namespace ConsoleApplication;

        type
          Program = class
          public
            class method GetNumber_1: Integer;
            begin
              writeLn('Getting Nummber 1');
              exit 1;
            end;

            class method GetNumber_2: Integer;
            begin
              writeLn('Getting Nummber 2');
              exit 2;
            end;

            class method Main(args: array of String): Int32;
            begin
              var num1: future Integer := GetNumber_1; 
              var num2: future Integer := GetNumber_2; 
              
              writeLn('Before Sum');
              var sum := num1 + num2;  // The calculation is expected to occur here, but the program just hangs here.
              writeLn('After Sum');

              writeLn('Sum is {0}', sum); 
              readLn();
            end;
          end;

        end.

This seems to be an old issue (logged as bugs://58458)?

I found this old post in the year 2012 Synchronous future hangs program execution

Seems an old problem comes back?

Is this Island specific (ie does then same code work as expected on .NET) or a general issue?

Thanks, logged as bugs://84634

Reproduced. Both Island/macOS and .NET were broken, .NET even worse.

bugs://84634 got closed with status fixed.