Fix: Issue 10520 - [profile+nothrow] Building with profiler results in "is not nothrow" error on some contracts

When Statement#blockExit() checks if the statements may throw or not, it
can also emit compile error.
We turn the second argument of it, mustNotThrow, to false
so that the error is suppressed.
Issue 10018 - Add VRP support for const/immutable variables
Merge pull request #3699 from lionello/bug10018

Issue 10018 - Add VRP support for const/immutable variables
Issue 13001 - Add VRP support for ternary operator ?:
Merge pull request #3698 from lionello/bug13001

Issue 13001 - Add VRP support for ternary operator ?:
Merge pull request #3554 from qchikara/FIX_profile_contract_nothrow

Fix: Issue 10520 - [profile+nothrow] Building with profiler results in "...
fix Issue 11471 - [profile+nothrow] `asm` statements rejected in `nothrow` functions if built with "-profile"

Workaround fix is introduced in e6c308938d02d1cbfc57c37c03d06bff0ec00c74, so just add a test case.
Merge pull request #3702 from 9rnsr/fix11471

[REG2.066a] Issue 11471 - [profile+nothrow] `asm` statements rejected in `nothrow` functions if built with "-profile"