In 9.3 "Built-in Function Objects",
para 4 says:
The behaviour specified for each built-in function via algorithm steps
or other means is the specification of the function body behaviour for
both [[Call]] and [[Construct]] invocations of the function.
but para 5 says:
Built-in function objects that are not identified as constructors do not
implement the [[Construct]] internal method unless otherwise specified in
the description of a particular function.
These seem to be contradictory. Is the para 5 sentence obsolete? Or is the para 4 sentence over-general?
---
(Also, it's unclear what para 5's "otherwise specified" means. How (and why) would the description of a function indicate that it implements the [[Construct]] internal method *without* identifying the function as a constructor?)
fixed in rev34 editor's draft
added a clarifying sentence to paragraphs 4.
"otherwise specified" is a general loophole that allows spec. text to explicitly over-ride such general statements on an "as needed" basis.
For example, 19.2.4 doesn't identify bound function instances as constructors, but 9.4.1.3 conditionally give them a [[Construct]] is the target function has a [[Construct]]
fixed in rev34