@@ -12,6 +12,7 @@ pub struct ModuleRecordBuilder<'a> {
1212 module_record : ModuleRecord < ' a > ,
1313 export_entries : Vec < ExportEntry < ' a > > ,
1414 export_default_duplicated : Vec < Span > ,
15+ exported_bindings_duplicated : Vec < NameSpan < ' a > > ,
1516}
1617
1718impl < ' a > ModuleRecordBuilder < ' a > {
@@ -21,6 +22,7 @@ impl<'a> ModuleRecordBuilder<'a> {
2122 module_record : ModuleRecord :: new ( allocator) ,
2223 export_entries : vec ! [ ] ,
2324 export_default_duplicated : vec ! [ ] ,
25+ exported_bindings_duplicated : vec ! [ ] ,
2426 }
2527 }
2628
@@ -37,7 +39,7 @@ impl<'a> ModuleRecordBuilder<'a> {
3739 let module_record = & self . module_record ;
3840
3941 // It is a Syntax Error if the ExportedNames of ModuleItemList contains any duplicate entries.
40- for name_span in & module_record . exported_bindings_duplicated {
42+ for name_span in & self . exported_bindings_duplicated {
4143 let old_span = module_record. exported_bindings [ & name_span. name ] ;
4244 errors. push ( diagnostics:: duplicate_export ( & name_span. name , name_span. span , old_span) ) ;
4345 }
@@ -88,7 +90,7 @@ impl<'a> ModuleRecordBuilder<'a> {
8890
8991 fn add_export_binding ( & mut self , name : Atom < ' a > , span : Span ) {
9092 if let Some ( old_node) = self . module_record . exported_bindings . insert ( name. clone ( ) , span) {
91- self . module_record . exported_bindings_duplicated . push ( NameSpan :: new ( name, old_node) ) ;
93+ self . exported_bindings_duplicated . push ( NameSpan :: new ( name, old_node) ) ;
9294 }
9395 }
9496
0 commit comments