Subject: Re: bug#46847: 28.0.50; [native-comp] assume pseudo-insns should be verified

From: Andrea Corallo <[email-masked]>
Date: Sun, 14 Mar 2021 21:07:47 +0000

Pip Cet <[email-masked]> writes:

[...]

> Function types:
> 1. append has type (function (&rest t) t), not (function (&rest list) list)
> 2. aref has type (function (t fixnum) t), not (function (array fixnum) t)
> 3. bool-vector-count-consecutive has type (function (bool-vector
> boolean integer) fixnum), not (function (bool-vector bool-vector
> integer) fixnum))
> 4. at least some of the frame-* functions accept nil parameters
> 5. intern-soft has type (function ((or string symbol) &optional
> vector) symbol), not (function (string &optional vector) symbol)
> 6. length has type (function (t) integer), not (function (sequence) integer)
> 7. at least some of the minibuffer functions can return nil as well as a window.
> 8. nthcdr has type (function (integer t) t), not (function (integer
> list) list)
> 9. radians-to-degrees is a macro and probably shouldn't have a function type
> 10. string has type (function (&rest fixnum) string), not (function
> (&rest fixnum) strng)
> 11. user-full-name has type (function (&optional integer) (or string
> null)), not (function (&optional integer) string)

I've fixed most of these, please given you have already investigated
this issue be more precise on points 4 and 7.

> Predicate types:
> 1. functionp isn't equivalent to (or function symbol)

Would you suggest what's the right type specifier or the counter example
that violated this so we can fix it?

> Other:
> 1. comp-lambda-list-gen has to allow optional arguments to be nil even
> if explicitly specified.

Not sure I understand, please be more precise in describing the issue so
we can fix it.

Thanks

  Andrea