diff options
-rw-r--r-- | compiler/ccgtypes.nim | 4 | ||||
-rw-r--r-- | compiler/commands.nim | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/compiler/ccgtypes.nim b/compiler/ccgtypes.nim index bd3e6d40d..35d73aac0 100644 --- a/compiler/ccgtypes.nim +++ b/compiler/ccgtypes.nim @@ -125,7 +125,7 @@ proc typeName(typ: PType): Rope = let typ = typ.skipTypes(irrelevantForBackend) result = if typ.sym != nil and typ.kind in {tyObject, tyEnum}: - typ.sym.name.s.mangle.rope + rope($typ.kind & '_' & typ.sym.name.s.mangle) else: rope($typ.kind) @@ -799,7 +799,7 @@ proc getTypeDescAux(m: BModule, origTyp: PType, check: var IntSet): Rope = add(m.s[cfsTypes], recdesc) elif tfIncompleteStruct notin t.flags: addAbiCheck(m, t, result) of tySet: - result = getTypeName(m, t.lastSon, hashType t.lastSon) & "_Set" + result = $t.kind & '_' & getTypeName(m, t.lastSon, hashType t.lastSon) m.typeCache[sig] = result if not isImportedType(t): let s = int(getSize(t)) diff --git a/compiler/commands.nim b/compiler/commands.nim index e837ee922..9781a8af4 100644 --- a/compiler/commands.nim +++ b/compiler/commands.nim @@ -454,6 +454,7 @@ proc processSwitch(switch, arg: string, pass: TCmdLinePass, info: TLineInfo; of "native", "gdb": incl(gGlobalOptions, optCDebug) gOptions = gOptions + {optLineDir} - {optEndb} + defineSymbol("nimTypeNames", nil) # type names are used in gdb pretty printing undefSymbol("endb") else: localError(info, "expected endb|gdb but found " & arg) |