Refactored memcpy calls to D slices (#21062)

* Refactored memcpy calls to D slices

* Added .DS_Store to .gitignore
This commit is contained in:
Abhay Pratap 2025-03-24 04:42:13 +05:30 committed by GitHub
parent e896b5c98d
commit 2036516c17
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 13 additions and 13 deletions

1
.gitignore vendored
View file

@ -61,3 +61,4 @@ untracked_files/
# Just in case
/dmd
.DS_Store

View file

@ -832,8 +832,8 @@ final class CParser(AST) : Parser!AST
const len2 = token.len;
len = len1 + len2;
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
memcpy(s2, s, len1 * char.sizeof);
memcpy(s2 + len1, token.ustring, len2 * char.sizeof);
s2[0 .. len1] = s[0 .. len1];
s2[len1 .. len1 + len2] = token.ustring[0 .. len2];
s = s2;
}
else
@ -3511,12 +3511,12 @@ final class CParser(AST) : Parser!AST
case TOK.colonColon: // treat as two separate : tokens for iasmgcc
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
(*ptoklist).value = TOK.colon;
ptoklist = &(*ptoklist).next;
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
(*ptoklist).value = TOK.colon;
ptoklist = &(*ptoklist).next;
@ -3526,7 +3526,7 @@ final class CParser(AST) : Parser!AST
default:
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
ptoklist = &(*ptoklist).next;
*ptoklist = null;
nextToken();

View file

@ -2772,7 +2772,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
if (len > 0)
{
docline = cast(char*)mem.xmalloc_noscan(len + 2);
memcpy(docline, begPtr, len);
docline[0 .. len] = begPtr[0 .. len];
docline[len] = '\n'; // Terminate all lines by LF
docline[len + 1] = '\0';
}
@ -7105,12 +7105,12 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
case TOK.colonColon: // treat as two separate : tokens for iasmgcc
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
(*ptoklist).value = TOK.colon;
ptoklist = &(*ptoklist).next;
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
(*ptoklist).value = TOK.colon;
ptoklist = &(*ptoklist).next;
@ -7120,7 +7120,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
default:
*ptoklist = allocateToken();
memcpy(*ptoklist, &token, Token.sizeof);
**ptoklist = this.token;
ptoklist = &(*ptoklist).next;
*ptoklist = null;
nextToken();
@ -8264,9 +8264,8 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
const len2 = token.len;
len = len1 + len2;
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
memcpy(s2, s, len1 * char.sizeof);
memcpy(s2 + len1, token.ustring, len2 * char.sizeof);
s = s2;
s2[0 .. len1] = s[0 .. len1];
s2[len1 .. len1 + len2] = token.ustring[0 .. len2];
}
else
break;
@ -8473,7 +8472,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
errorSupplemental("try enclosing the contents of `is` with a `typeof` expression");
nextToken();
Token* tempTok = peekPastParen(&token);
memcpy(&token, tempTok, Token.sizeof);
token = *tempTok;
goto Lerr;
}
targ = parseType(&ident);