ValueExtractionSynthesizer: check for the existance and accessibility of copy constructor. (ROOT-6185).
Default cling::Value set to invalid.

The cling::Value is initialized to be invalid then the value extraction changes it or not. If we do not have an available copy constructor for objects the value stays invalid.
Value extraction setting void types.

In the case the type is void we have to reset the maybe different object type pushed on the stack before the assesment of the desugared type.
Correct line alignment.
Value extraction: not a record decl we have copy ctor by default.
Merge Cristina's ValueExtraction / copy c'tor fixes.