Skip to content

Commit 713ab0a

Browse files
committed
Translate = delete to @disable
1 parent 66999e4 commit 713ab0a

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

src/cppconv/dwriter.d

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6864,8 +6864,8 @@ void declarationToDCode(ref CodeWriter code, DWriterData data, Declaration d, im
68646864
if (isStruct(parentClassTree, data))
68656865
{
68666866
code.writeln("@disable this(this);");
6867-
if (d.tree.nameOrContent == "FunctionDefinitionMember"
6868-
&& d.tree.childs.length == 4 && d.tree.childs[2].nameOrContent == "delete")
6867+
if (d.tree.nonterminalID == nonterminalIDFor!"FunctionDefinitionMember"
6868+
&& d.tree.childs.length == 4 && d.tree.childs[2].content == "delete")
68696869
commentWholeDecl = true;
68706870
}
68716871
else if (!hasFunctionBody)
@@ -7086,6 +7086,12 @@ void declarationToDCode(ref CodeWriter code, DWriterData data, Declaration d, im
70867086
}
70877087
}
70887088

7089+
if (d.tree.nonterminalID == nonterminalIDFor!"FunctionDefinitionMember"
7090+
&& d.tree.childs.length == 4 && d.tree.childs[2].content == "delete")
7091+
{
7092+
codeTmp.write("@disable ");
7093+
}
7094+
70897095
codeTmp.write(addedAttributes);
70907096

70917097
if (parentClassTree.isValid && (forwardDecl2.flags & DeclarationFlags.static_) != 0)
@@ -7192,8 +7198,14 @@ void declarationToDCode(ref CodeWriter code, DWriterData data, Declaration d, im
71927198
codeTmp.write(declList[0].codeAfter);
71937199
codeTmp.write(operatorTemplateConstraint);
71947200

7195-
if (d.tree.nameOrContent.startsWith("FunctionDefinition")
7196-
&& d.tree.childs.length == 4 && d.tree.childs[2].nameOrContent == "0")
7201+
if (d.tree.nonterminalID == nonterminalIDFor!"FunctionDefinitionMember"
7202+
&& d.tree.childs.length == 4 && d.tree.childs[2].content == "0")
7203+
{
7204+
skipToken(code, data, d.tree.childs[1], false, true);
7205+
skipToken(code, data, d.tree.childs[2], false, true);
7206+
}
7207+
if (d.tree.nonterminalID == nonterminalIDFor!"FunctionDefinitionMember"
7208+
&& d.tree.childs.length == 4 && d.tree.childs[2].content == "delete")
71977209
{
71987210
skipToken(code, data, d.tree.childs[1], false, true);
71997211
skipToken(code, data, d.tree.childs[2], false, true);

0 commit comments

Comments
 (0)