Inline native code blocks now automatically insert a cast to the specified result type.
Inline native code blocks now automatically insert a cast to the specified result type.

Previously, the result type "hard-coded" Rogue's information about the value
obtained from native code but did not actually cause any type conversions.

For example, consider:

  local x = native("sqrt(35)")->Int32 : Real64

Previously this would generate C++ code similar to:

  RogueReal64 x_0 = (RogueReal64) sqrt(35);

Now this generates the following:

  RogueReal64 x_0 = (RogueReal64)(RogueInt32)sqrt(35);

AbePralle/Rogue,AbePralle/Rogue,Plasmaworks/Rogue,Plasmaworks/Rogue,Plasmaworks/Rogue,Plasmaworks/Rogue