Proposal: The library declaration (features identifier ...) causes each identifier to be added to the implementations feature list that is accessible at library import time via cond-expand and at run time via the features procedure. This permits a library to specify what features it provides. If an identifier is already on the feature list, no action is taken.
To avoid phasing problems, the new identifiers may not be visible until the library has been completely imported.
This seems poorly thought out and causes phasing problems, changing the semantics of a library depending on what has or hasn't been loaded (whether the library imports it or not). Therefore not being balloted.