Refactoring for detection mechanism of expression modifiable.
fix Issue 9413 - Incorrect modification inside contracts is not detected correctly
fix Issue 9414 - Incorrect modification inside contracts is not detected on virtual function
Fix up error messages for 9414
fix Issue 8783 - ref foreach update of const fixed size arrays in constructor