mirror of
https://github.com/dlang/dmd.git
synced 2025-04-25 20:50:41 +03:00
Refactored memcpy calls to D slices (#21062)
* Refactored memcpy calls to D slices * Added .DS_Store to .gitignore
This commit is contained in:
parent
e896b5c98d
commit
2036516c17
3 changed files with 13 additions and 13 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -61,3 +61,4 @@ untracked_files/
|
||||||
|
|
||||||
# Just in case
|
# Just in case
|
||||||
/dmd
|
/dmd
|
||||||
|
.DS_Store
|
||||||
|
|
|
@ -832,8 +832,8 @@ final class CParser(AST) : Parser!AST
|
||||||
const len2 = token.len;
|
const len2 = token.len;
|
||||||
len = len1 + len2;
|
len = len1 + len2;
|
||||||
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
|
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
|
||||||
memcpy(s2, s, len1 * char.sizeof);
|
s2[0 .. len1] = s[0 .. len1];
|
||||||
memcpy(s2 + len1, token.ustring, len2 * char.sizeof);
|
s2[len1 .. len1 + len2] = token.ustring[0 .. len2];
|
||||||
s = s2;
|
s = s2;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -3511,12 +3511,12 @@ final class CParser(AST) : Parser!AST
|
||||||
|
|
||||||
case TOK.colonColon: // treat as two separate : tokens for iasmgcc
|
case TOK.colonColon: // treat as two separate : tokens for iasmgcc
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
(*ptoklist).value = TOK.colon;
|
(*ptoklist).value = TOK.colon;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
|
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
(*ptoklist).value = TOK.colon;
|
(*ptoklist).value = TOK.colon;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
|
|
||||||
|
@ -3526,7 +3526,7 @@ final class CParser(AST) : Parser!AST
|
||||||
|
|
||||||
default:
|
default:
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
*ptoklist = null;
|
*ptoklist = null;
|
||||||
nextToken();
|
nextToken();
|
||||||
|
|
|
@ -2772,7 +2772,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
|
||||||
if (len > 0)
|
if (len > 0)
|
||||||
{
|
{
|
||||||
docline = cast(char*)mem.xmalloc_noscan(len + 2);
|
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] = '\n'; // Terminate all lines by LF
|
||||||
docline[len + 1] = '\0';
|
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
|
case TOK.colonColon: // treat as two separate : tokens for iasmgcc
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
(*ptoklist).value = TOK.colon;
|
(*ptoklist).value = TOK.colon;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
|
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
(*ptoklist).value = TOK.colon;
|
(*ptoklist).value = TOK.colon;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
|
|
||||||
|
@ -7120,7 +7120,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
|
||||||
|
|
||||||
default:
|
default:
|
||||||
*ptoklist = allocateToken();
|
*ptoklist = allocateToken();
|
||||||
memcpy(*ptoklist, &token, Token.sizeof);
|
**ptoklist = this.token;
|
||||||
ptoklist = &(*ptoklist).next;
|
ptoklist = &(*ptoklist).next;
|
||||||
*ptoklist = null;
|
*ptoklist = null;
|
||||||
nextToken();
|
nextToken();
|
||||||
|
@ -8264,9 +8264,8 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
|
||||||
const len2 = token.len;
|
const len2 = token.len;
|
||||||
len = len1 + len2;
|
len = len1 + len2;
|
||||||
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
|
auto s2 = cast(char*)mem.xmalloc_noscan(len * char.sizeof);
|
||||||
memcpy(s2, s, len1 * char.sizeof);
|
s2[0 .. len1] = s[0 .. len1];
|
||||||
memcpy(s2 + len1, token.ustring, len2 * char.sizeof);
|
s2[len1 .. len1 + len2] = token.ustring[0 .. len2];
|
||||||
s = s2;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
break;
|
break;
|
||||||
|
@ -8473,7 +8472,7 @@ class Parser(AST, Lexer = dmd.lexer.Lexer) : Lexer
|
||||||
errorSupplemental("try enclosing the contents of `is` with a `typeof` expression");
|
errorSupplemental("try enclosing the contents of `is` with a `typeof` expression");
|
||||||
nextToken();
|
nextToken();
|
||||||
Token* tempTok = peekPastParen(&token);
|
Token* tempTok = peekPastParen(&token);
|
||||||
memcpy(&token, tempTok, Token.sizeof);
|
token = *tempTok;
|
||||||
goto Lerr;
|
goto Lerr;
|
||||||
}
|
}
|
||||||
targ = parseType(&ident);
|
targ = parseType(&ident);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue