[pmc] file: UNUSED SELF [cage]
Merge branch 'smoke-me/illegal-escape-gh1103'
[cage] Silence verbose pbc_to_exe, frontend/parrot2/build.pir

add --verbose to pbc_to_exe,
add 3rd optional arg to frontend/parrot2/build.pir for verbose.

make -s is now silent besides warnings and
  'Invoking Parrot to generate install_config.fpmc"
Fixes GH #1102
[build] --{en,dis}able-feature, --with{,out}-library [GH #1101]

Configure.pl now similar to autoconf:
deprecate --parrot-is-shared in favor of --enable-shared.
allow both variants --enable,disable for the features:
  shared, rpath, threads
and set both config->options keys.

allow both variants --with,without for the libraries:
  llvm pcre crypto gdbm gettext gmp icu opengl libffi
  readline pcre threads zlib
and set both config->options keys.
translate --{en,dis}able-threads into --without-threads
add tests for all options.
add api.yaml deprecation note
[test] Added LexInfo.declare_lex_preg test

For GH #1095
global names do work fine, only lexicals not.
Note I do not know how to reliable get the correct target register index for
declare_lex_preg in pure pir, and how to initialize it.
Setting it crashes the ctx.
[build] turn off --debugging by default, accept --debugging arg

allow --debugging=-g3
default: leave -g in CFLAGS but do set -DNDEBUG to leave out assertions.
set debugging in the configure hash only when --debugging is given.

This is basically changing wrong t/configure/ tests which were
copied&pasted all over to test for --debugging on by default all
over instead of just once.

See GH #1099
[cage] fix 2 wrong copyright formats
[cage] fix 1 wrong pod format
[test] change t/op/basic_9 from pasm to pir

-r run-pbc does not work nice with parser errors within pasm.
throws a different error message.
ChangeLog
[build] Enable --disable-shared, link to static libparrot

When the system did support dynamic linking we had no chance to
link against a static libparrot, as PARROT_LIBS checked for
has_dynamic_linking and not parrot_is_shared.
Note that we have no --disable-static yet, so we cannot forbid
creating a LIBPARROT_STATIC, this only relies on has_static_linking.
[pmc] Clarify dead coroutines

Coros are not resumable when all yield states are exhausted.
This is consistent with the LUA design, which we follow, and all other
coro implementations I know of. Just the parrot book argues that after a
return the state should be automatically reset. Technically no problem, even
without the quirks described in https://github.com/parrot/parrot/issues/564#issuecomment-3503597
or via a seperate reset() method, but semantically an auto-reset is problematic.

Added testcases for all the relevant tickets: #564, #585 and there is on
bug remaining: TT #1003 leading to Null PMC access in get_string on a dead coro
[pmc] Coroutine is now auto-resetting
[pmc] Add Coroutine.reset() method

Mentioned in GH #564.

It is however more efficient to clone an initial coro and
copy this saved clone back, as the context does not need to
be recreated afresh.
coro: implemented autoreset method and attribute

fix crashes in sub_continuation_rewind_environment()
Still using traceflag 8. Maybe I should adopt it or resuse the SUB_CALL_FLAG?
core: autoreset tests, TRACE_CORO, PARROT_TRACE_CORO_STATE_FLAG

add TRACE_CORO define, -t8 only usable when not --optimizing
fix -t2 returning from coroutine msg.
-t2 msg either Coroutine autoreset or Coroutine no autoreset
add autoreset test, not yet working (one-off same as TT #1003)
Document -t8 flag, harmonize parrot usage messages

along parrot and parrot_old
Omit GH issue prefix from ChangeLog if default.
[cage] fix 2 codingstd issues with TRACE_CORO
[core] Disable -t trace flags 4+8 with --optimize

Fixes GH #1105
add to ChangeLog