[#104307] Float truncate — Eustáquio Rangel <eustaquiorangel@...>
Hi!
4 messages
2021/06/16
[ruby-core:104287] [Ruby master Bug#17946] win32/win32.c: `&` has lower precedence than `==`
From:
merch-redmine@...
Date:
2021-06-15 19:36:13 UTC
List:
ruby-core #104287
Issue #17946 has been updated by jeremyevans0 (Jeremy Evans).
Thank you for pointing this out. I agree that parentheses must have been intended in this case. I submitted a pull request to add them: https://github.com/ruby/ruby/pull/4575
----------------------------------------
Bug #17946: win32/win32.c: `&` has lower precedence than `==`
https://bugs.ruby-lang.org/issues/17946#change-92505
* Author: xtkoba (Tee KOBAYASHI)
* Status: Open
* Priority: Normal
* Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN
----------------------------------------
A warning in [win32/win32.c:2600](https://github.com/ruby/ruby/blob/9210f8df7ff23f06c03dedf9f89fd8ab902043e3/win32/win32.c#L2600):
```
../win32/win32.c:2606:88: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
*(pend + (sizeof(FUNCTION_BEFORE_RET_MARK) - 1) + FUNCTION_SKIP_BYTES) & FUNCTION_RET == FUNCTION_RET) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../win32/win32.c:2606:88: note: place parentheses around the '==' expression to silence this warning
*(pend + (sizeof(FUNCTION_BEFORE_RET_MARK) - 1) + FUNCTION_SKIP_BYTES) & FUNCTION_RET == FUNCTION_RET) {
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../win32/win32.c:2606:88: note: place parentheses around the & expression to evaluate it first
*(pend + (sizeof(FUNCTION_BEFORE_RET_MARK) - 1) + FUNCTION_SKIP_BYTES) & FUNCTION_RET == FUNCTION_RET) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
```
I believe this is not intentional because `FUNCTION_RET == FUNCTION_RET` is a tautology.
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>