[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

safe-forname option



Hi,

I have a question about the safe-forname option for the cg phase. From reading the spec, it seems that with this option set to true, a call to forName() should conservatively lead to call edges to all possible static initializers. However, looking at the code, it seems that only classes already known by the Scene are considered. So, if forName() is passed the name of a class that isn't mentioned elsewhere in the code and is not specified as a dynamic class, the safe-forname option will not be conservative in adding call edges for that call. In other words, safe-forname only yields a conservative result when all possible dynamic classes that are not mentioned explicitly in the code are specified at the command-line. Is my understanding correct? If so, perhaps the documentation for this option (and for safe-newinstance I guess) should be clarified.

Thanks,
Manu