ssl: Prepare for release
Merge branch 'ia/ssl/prepare-for-release' into maint

* ia/ssl/prepare-for-release:
  ssl: Prepare for release
Fix variable usage tracking in erl_lint

When analyzing complex expressions (i.e. comprehensions, cases, tries,
ifs and receives), erl_lint does not forget about old unused variables
when returning the updated variable table. This causes a bug where old
unused variables are not recorded as such:

t(X, Y) ->
  #r{a=[ K || K <- Y ],b=[ K || K <- Y ].

As erl_lint uses vtmerge_pat/2 to merge the results of the analysis of
the two list comprehensions, X is marked as used and the warning is not
emitted.

The function vtmerge_pat/2 is used instead of the similar vtmerge/2
which does not mark multiple occurrences of a variable as usage to
handle cases like the following one:

t(X, Y) ->
  #r{a=A=X,b=A=Y}.

Other simpler expressions like conses, tuples and external fun
references does not correctly follow this behaviour.

This commit fixes both issues and makes erl_lint not return old unused
variables in updated tables and makes all compound expressions use
vtmerge_pat/2.

Reported-by: Anders Ramsell
Primary bootstrap
Silence a misleading warning with some comprehensions

When compiling comprehensions with generators which are foldable to
'true', a misleading warning is emitted by sys_core_fold because a
clause resulting from the compilation of the comprehension to Core
Erlang is not marked as generated by the compiler.

An example of such a comprehension is [ true || true ].
Bootstrap
Merge branch 'dg/win_icon' into pu
Merge branch 'rc/break-out-asserts' into pu
Merge branch 'ao/fix_mnesia_block_table_exception' into pu
Merge branch 'sze/ssh_cli_handles' into pu
Merge branch 'sze/edlin_understand_keys' into pu
Merge branch 'sze/limit_max_length_int_shell' into pu
Merge branch 'yi/fix_eunit_io_protocol' into pu
Merge branch 'nox/fix-fname-inlining' into pu
Merge branch 'nox/igor-funs' into pu
Merge branch 'sze/to_erl' into pu
Merge branch 'feat/erl_tidy_print_to_stdout' into pu
Merge branch 'epa/fix_io_noreturn_with_self_pid' into pu
Merge branch 'nox/fix-erl_lint-variable-usage' into pu
Merge branch 'nox/fix-comp-warnings' into pu