~sircmpwn/hare-dev

hare-specification : Update to match harec flexible promotion v2 APPLIED

Rosie K Languet: 1
 Update to match harec flexible promotion

 1 files changed, 9 insertions(+), 5 deletions(-)
Export patchset (mbox)
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s https://lists.sr.ht/~sircmpwn/hare-dev/patches/56895/mbox | git am -3
Learn more about email & git

[PATCH hare-specification v2] Update to match harec flexible promotion Export this patch

Updates the flexible literal promotion algorithm to match current harec
behavior in promoting signed flexible literals to unsigned integer types.

Signed-off-by: Rosie K Languet <rkl@rosiesworkshop.net>
---
 language/expressions.tex | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/language/expressions.tex b/language/expressions.tex
index 0d47f53..dcbc110 100644
--- a/language/expressions.tex
+++ b/language/expressions.tex
@@ -2809,11 +2809,15 @@ which shall be the result of the promotion.

\specsubitem
If one operand is a flexible integer and the other is a non-flexible type, the
promotion shall succeed only if the non-flexible type is an integer type, and
the minimum and maximum value fields of the flexible integer are representable
within the non-flexible integer type without any data loss. If the promotion
succeeds, the flexible integer shall be lowered to the non-flexible integer
type, which shall be the result of the promotion.
promotion shall succeed only if the non-flexible type is an integer type and if
the maximum value field of the flexible integer is representable within the
integer type without any data loss. If the integer type is signed, the promotion
shall succeed only if the minimum value field is also so representable. If the
integer type is unsigned and the flexible integer is negative, it shall be first
promoted to the corresponding (equal-width) signed integer type, and then
bit-cast to the unsigned type. If the promotion succeeds, the flexible integer
shall be lowered to the non-flexible integer type, which shall be the result of
the promotion.

\specsubitem
If one operand is a flexible rune, the promotion shall succeed if the other type
-- 
2.47.1
Okay I'm very confused now. There is *something* between lists.sr.ht and
my mailbox breaking that last line up, making the patch corrupt. But in
the patch ui on lists.sr.ht it shows up fine. This has never happened to
me before, but it looks like this really isn't an issue on your end, sorry.
thanks!

to git@git.sr.ht:~sircmpwn/hare-specification
  f07ed81..fd73e45  master -> master

needed some fiddling to apply, not sure why but one of the lines got 
split in two for me