noticing that Short-circuit Boolean Operators (GNU Octave (version 7.3.0)) already includes the following:

`The expression boolean1 is evaluated and converted to a scalar using the equivalent of the operation 'all (boolean1(:))'. `

is the idea that it just needs explicit mention that that is a matlab incompatibility? how about something like:

`The expression boolean1 is evaluated and converted to a scalar using the equivalent of the operation `all (boolean1(:))`. Note that if boolean1 is not of type logical, Octave will perform automatic conversion of `boolean1` to a logical data type according to XREF@Automatic-Conversion-of-Data-Types. This is a known extension beyond MATLAB capability which throws an error if `boolean1` is not a logical scalar (as of v2022b).`

(is the last sentence appropriate/necessary?)

now noting that Automatic-Conversion-of-Data-Types makes no mention of logicals and would need to be updated.

Last I see: Logical Values (GNU Octave (version 7.3.0))

the only point that seems to apply is at the end where it says:

`Logical values can also be constructed by casting numeric objects to logical values, or by using the `true` or `false` functions.`

perhaps something should be said there, but maybe itâs addressed well enough above.

I DID note, however, that it says âcasting numeric objectsâ. I now realise this all started about char vectors. I see the following:

```
octave:1> logical("blah")
error: logical: wrong type argument 'string'
octave:2> logical('blah')
error: logical: wrong type argument 'sq_string'
octave:4> true && [0 1 2]
ans = 0
octave:5> true && ["a","b"]
ans = 1
octave:6> all(["a","b"])
ans = 1
octave:9> logical(char(0))
error: logical: wrong type argument 'sq_string'
octave:10> all(char(0))
ans = 0
octave:11> true && char(0)
ans = 0
octave:13> true + char(0)
ans = 1
octave:14> class(ans)
ans = double
```

it seems some functions do char->logical conversion. is there any inconsistency here to be addressed beyond documentation?