rem: var semanticType = Config.semanticTypes[semanticTypeName]; delete semanticTypeMap[semanticType.supertype]; 
add: var record = semanticTypeMap[semanticTypeName]; if (record.writers.length > 0) { var semanticType = Config.semanticTypes[semanticTypeName]; delete semanticTypeMap[semanticType.supertype]; } 
context: function getConversionSemanticTypes(fromFormatName, toFormatName) {    var semanticTypeMap = {};        for (var i = 0; i < Config.readers.length; i++) {        var reader = Config.readers[i];        if (reader.format == fromFormatName) {            var semanticType = Config.semanticTypes[reader.semanticType];            while (semanticType != null) {                var record;                if (semanticType.name in semanticTypeMap) {                    record = semanticTypeMap[semanticType.name];                } else {                    record = {                         semanticType: semanticType.name,                         readers: [],                         writers: []                     };                    semanticTypeMap[semanticType.name] = record;                }                record.readers.push(reader);                                semanticType = Config.semanticTypes[semanticType.supertype];            }        }    }        for (semanticTypeName in semanticTypeMap) {        var record = semanticTypeMap[semanticTypeName];                for (var i = 0; i < Config.writers.length; i++) {            var writer = Config.writers[i];            if (writer.format == toFormatName && writer.semanticType == semanticTypeName) {                record.writers.push(writer);            }        }    }        /*     *  Eliminate semantic type for which we have sub semantic type.     */    if (true) {        for (semanticTypeName in semanticTypeMap) {            var semanticType = Config.semanticTypes[semanticTypeName];            delete semanticTypeMap[semanticType.supertype];        }    }        /*     *  Return all conversions that we have some writers for.     */    var results = [];    for (semanticTypeName in semanticTypeMap) {        var record = semanticTypeMap[semanticTypeName];        if (record.writers.length > 0) {            results.push(record);        }    }        return results;}
meta: 2865	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/2865/3df35033f5161ee961b3cb9f0ca738479dca1c85/babel.js/buggy/src/main/webapp/scripts/babel.js