From: nobu@... Date: 2019-02-15T10:23:43+00:00 Subject: [ruby-core:91559] [Ruby trunk Feature#15606] Precedence of -@ and +@ Issue #15606 has been updated by nobu (Nobuyoshi Nakada). Status changed from Open to Feedback Do you expect `i = -1; -i.abs` to return `+1`? ---------------------------------------- Feature #15606: Precedence of -@ and +@ https://bugs.ruby-lang.org/issues/15606#change-76822 * Author: sos4nt (Stefan Sch����ler) * Status: Feedback * Priority: Normal * Assignee: * Target version: ---------------------------------------- `-@` and `+@` seem to have issues with method chaining: ```ruby i = 5 -i.negative? # NoMethodError (undefined method `-@' for false:FalseClass) ``` here's another example: ```ruby # frozen_string_literal: true +'foo'.upcase! # FrozenError (can't modify frozen String) ``` I know that I can fix this by adding parentheses, i.e. `(-i).negative?` and `(+'foo').upcase!` but it feels cumbersome. Shouldn't the above work out of the box? Unless I'm missing a crucial use case, the precedence for `-@` and `+@` should be changed. -- https://bugs.ruby-lang.org/ Unsubscribe: