浏览代码

Fix for extension classes munged name clashes.

Mark Sibly 9 年之前
父节点
当前提交
f10e58c772
共有 1 个文件被更改,包括 2 次插入5 次删除
  1. 2 5
      src/mx2cc/mung.monkey2

+ 2 - 5
src/mx2cc/mung.monkey2

@@ -184,8 +184,7 @@ Function ClassName:String( ctype:ClassType )
 		Return symbol
 	Endif
 	
-	If ctype.cdecl.IsExtension Return "x_"+ScopeName( ctype.scope )
-
+	If ctype.cdecl.IsExtension Return "x_"+ScopeName( ctype.scope )+"_"+ctype.scope.FindFile().fdecl.ident
 
 	Return "t_"+ScopeName( ctype.scope )
 End
@@ -210,13 +209,12 @@ Function FuncName:String( func:FuncValue )
 		Return symbol
 	Endif
 	
-	If fdecl.kind="function" Or func.IsExtension'types
+	If fdecl.kind="function" Or func.IsExtension
 	
 		Local sym:="g_"+ScopeName( func.scope )+"_"+MungIdent( fdecl.ident )
 		
 		If fdecl.ident="to" sym+="_"+MungArg( func.ftype.retType )
 
-'		hopefully not necessary!		
 		If func.types sym+=MungArgs( func.types )
 		
 		Return sym
@@ -229,7 +227,6 @@ Function FuncName:String( func:FuncValue )
 		
 		If fdecl.ident="to" sym+="_"+MungArg( func.ftype.retType )
 
-'		hopefully not necessary!		
 		If func.types sym+=MungArgs( func.types )
 
 		Return sym