* mark the node which is the entry of the user code with a flag
* check for uninitialized variables at the node which is marked as the start of the user code

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26014 3ad0048d-3df7-0310-abae-a5850022a9f2
* implicit try...finally frames are added after dfa so we don't have to take care if the subroutine needs/uses those or not

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26015 3ad0048d-3df7-0310-abae-a5850022a9f2
* check the scope of a variable when checking dfa based uninitialized variables,
  dfa is procedure local only so consider only variables of the current scope

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26016 3ad0048d-3df7-0310-abae-a5850022a9f2
* the writestr helper initializes the target string, so mark it as being written
  before the call to the helper to get proper life information

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26017 3ad0048d-3df7-0310-abae-a5850022a9f2