changeset 31054:201e29541ef5 stable

NEWS.7.md: Clarify whitespace rules with inplace and binary operators (bug #62552).
author Markus Mützel <markus.muetzel@gmx.de>
date Thu, 02 Jun 2022 14:47:55 +0200
parents 28d63e8bcaa7
children 20c9d48487e3 b5902106c043
files etc/NEWS.7.md
diffstat 1 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/etc/NEWS.7.md	Thu Jun 02 11:07:54 2022 +0200
+++ b/etc/NEWS.7.md	Thu Jun 02 14:47:55 2022 +0200
@@ -88,8 +88,15 @@
 
 - For compatibility with command syntax, inplace operators (`+=`, `-=`,
 `*=`, `.*=`, `/=`, `./=`, `\=`, `.\=`, `^=`, `.^=`, `|=`, `&=`) must now
-be followed by a whitespace character.  That was not a requirement in
-previous versions of Octave.
+either be followed by a whitespace character or must not be preceded by a
+whitespace character.  For commands with binary operators (`+`, `-`, `*`,
+ `.*`, `/`, `./`, `\`, `.\`, `^`, `.^`, `|`, `&`, `||`, `&&`) without
+assignment, the same rules apply.  That was not a requirement in previous
+versions of Octave.
+E.g., `a + b`, `a+ b`, or `a+b` are valid if `a` is a variable.  In
+contrast, `a +b` will throw an error if `a` is a variable.  The latter
+example is now interpreted as command syntax expression equivalent to the
+function syntax expression `a ("+b")`.
 
 - The `mldivide` function (i.e., the `\` operator) now uses an LU
 decomposition to solve nearly singular full square matrices.  This is