diff options
Diffstat (limited to 'gcc/d/dmd/utils.c')
-rw-r--r-- | gcc/d/dmd/utils.c | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/gcc/d/dmd/utils.c b/gcc/d/dmd/utils.c deleted file mode 100644 index c9e6322..0000000 --- a/gcc/d/dmd/utils.c +++ /dev/null @@ -1,123 +0,0 @@ - -/* Compiler implementation of the D programming language - * Copyright (C) 1999-2021 by The D Language Foundation, All Rights Reserved - * written by Walter Bright - * http://www.digitalmars.com - * Distributed under the Boost Software License, Version 1.0. - * http://www.boost.org/LICENSE_1_0.txt - */ - -#include "root/dsystem.h" -#include "mars.h" -#include "globals.h" -#include "root/file.h" -#include "root/filename.h" -#include "root/outbuffer.h" -#include "root/rmem.h" - -/** - * Normalize path by turning forward slashes into backslashes - * - * Params: - * src = Source path, using unix-style ('/') path separators - * - * Returns: - * A newly-allocated string with '/' turned into backslashes - */ -const char * toWinPath(const char *src) -{ - if (src == NULL) - return NULL; - - char *result = mem.xstrdup(src); - char *p = result; - while (*p != '\0') - { - if (*p == '/') - *p = '\\'; - p++; - } - return result; -} - -/** - * Reads a file, terminate the program on error - * - * Params: - * loc = The line number information from where the call originates - * f = a `ddmd.root.file.File` handle to read - */ -void readFile(Loc loc, File *f) -{ - if (f->read()) - { - error(loc, "Error reading file '%s'", f->name->toChars()); - fatal(); - } -} - -/** - * Writes a file, terminate the program on error - * - * Params: - * loc = The line number information from where the call originates - * f = a `ddmd.root.file.File` handle to write - */ -void writeFile(Loc loc, File *f) -{ - if (f->write()) - { - error(loc, "Error writing file '%s'", f->name->toChars()); - fatal(); - } -} - -/** - * Ensure the root path (the path minus the name) of the provided path - * exists, and terminate the process if it doesn't. - * - * Params: - * loc = The line number information from where the call originates - * name = a path to check (the name is stripped) - */ -void ensurePathToNameExists(Loc loc, const char *name) -{ - const char *pt = FileName::path(name); - if (*pt) - { - if (FileName::ensurePathExists(pt)) - { - error(loc, "cannot create directory %s", pt); - fatal(); - } - } - FileName::free(pt); -} - -/** - * Takes a path, and escapes '(', ')' and backslashes - * - * Params: - * buf = Buffer to write the escaped path to - * fname = Path to escape - */ -void escapePath(OutBuffer *buf, const char *fname) -{ - while (1) - { - switch (*fname) - { - case 0: - return; - case '(': - case ')': - case '\\': - buf->writeByte('\\'); - /* fall through */ - default: - buf->writeByte(*fname); - break; - } - fname++; - } -} |