29051, "jabraham17", "Missing comparison and min/max on imag/complex", "2026-06-30T20:45:28Z"
While working on some new complex param ops, I was surprised to find that the various comparison operators and min/max are not implemented on imag and complex.
For example, the following program does not compile, even though it is specifically documented to not compiler. Math — Chapel Documentation 2.10
param z = min(1.0i, 2.0i);
This is also true at runtime
var z = min(1.0i, 2.0i);
The following operators are missing
param/compile time ops on imag: <, >, <=, >=, min, max
param/compile time ops on complex: <, >, <=, >=, min, max
runtime ops on imag: <, >, <=, >=, min, max
runtime ops on imag: <, >, <=, >=, min, max
This feels like a missing feature rather than intentional (especially since we attempt to document some things as working when they really don't)