3.2 Semantic Differences (both compile, different behavior)
These patterns compile in both udewy and Dewy but may behave differently:
| Pattern | udewy Behavior | Dewy Behavior |
|---|---|---|
x >> n (when x is signed) | Unsigned shift (zeros fill) | Signed shift (sign bit fills)* |
a and b / a or b | Both sides always evaluated* | Short-circuit evaluation |
str1 =? str2 | Compares pointers | Compares content |
NOTE: Dewy selects signed or unsigned shift based on left operand type.
NOTE:
and/orcan short-circuit in udewy when they are the condition in aniforloopexpression (which matches regular dewy behavior).
In general, using any of these differences is considered not well-formed.