From a5c8a79eb8a9e4766fdbdcbeda9666af28200c60 Mon Sep 17 00:00:00 2001 From: Stian Gulpen Date: Mon, 18 Nov 2019 03:32:11 +0100 Subject: [PATCH] remove a couple of `strlen()` calls from dmd.traits --- src/dmd/traits.d | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/dmd/traits.d b/src/dmd/traits.d index 24b110f6f8..71ac34aec2 100644 --- a/src/dmd/traits.d +++ b/src/dmd/traits.d @@ -818,9 +818,9 @@ Expression semanticTraits(TraitsExp e, Scope* sc) if (s.semanticRun == PASS.init) s.dsymbolSemantic(null); - auto protName = protectionToChars(s.prot().kind); // TODO: How about package(names) + auto protName = protectionToString(s.prot().kind); // TODO: How about package(names) assert(protName); - auto se = new StringExp(e.loc, protName[0 .. strlen(protName)]); + auto se = new StringExp(e.loc, protName); return se.expressionSemantic(sc); } if (e.ident == Id.parent) @@ -1029,9 +1029,7 @@ Expression semanticTraits(TraitsExp e, Scope* sc) */ void insertInterfaceInheritedFunction(FuncDeclaration fd, Expression e) { - auto funcType = fd.type.toChars(); - auto len = strlen(funcType); - string signature = funcType[0 .. len].idup; + auto signature = fd.type.toString(); //printf("%s - %s\n", fd.toChars, signature); if (signature !in funcTypeHash) {