aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2020-06-07 16:37:25 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2020-06-07 16:39:39 +0200
commit761306fc5e60b1af1f7d0cc076da772a6c821cac (patch)
tree043f252a3fda44a67b6c1927fb1083e89c16a9a1 /gcc
parentb342cfd648e6658363c7c8fef83af8f59dba1795 (diff)
downloadgcc-761306fc5e60b1af1f7d0cc076da772a6c821cac.zip
gcc-761306fc5e60b1af1f7d0cc076da772a6c821cac.tar.gz
gcc-761306fc5e60b1af1f7d0cc076da772a6c821cac.tar.bz2
d: Merge upstream dmd 1831b24ff.
Converts some global and param fields from pointers to value types. Reviewed-on: https://github.com/dlang/dmd/pull/11245 gcc/d/ChangeLog: * dmd/MERGE: Merge upstream dmd 1831b24ff. * d-lang.cc (d_init_options): Remove initialization of updated fields. (d_handle_option): Adjust for new field types.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/d/d-lang.cc10
-rw-r--r--gcc/d/dmd/MERGE2
-rw-r--r--gcc/d/dmd/dmodule.c2
-rw-r--r--gcc/d/dmd/doc.c6
-rw-r--r--gcc/d/dmd/globals.h12
5 files changed, 13 insertions, 19 deletions
diff --git a/gcc/d/d-lang.cc b/gcc/d/d-lang.cc
index c4477cd..4192193 100644
--- a/gcc/d/d-lang.cc
+++ b/gcc/d/d-lang.cc
@@ -297,18 +297,12 @@ d_init_options (unsigned int, cl_decoded_option *decoded_options)
/* Default extern(C++) mangling to C++14. */
global.params.cplusplus = CppStdRevisionCpp14;
- global.params.linkswitches = new Strings ();
- global.params.libfiles = new Strings ();
- global.params.objfiles = new Strings ();
- global.params.ddocfiles = new Strings ();
-
/* Warnings and deprecations are disabled by default. */
global.params.useDeprecated = DIAGNOSTICoff;
global.params.warnings = DIAGNOSTICoff;
global.params.imppath = new Strings ();
global.params.fileImppath = new Strings ();
- global.params.modFileAliasStrings = new Strings ();
/* Extra GDC-specific options. */
d_option.fonly = NULL;
@@ -474,7 +468,7 @@ d_handle_option (size_t scode, const char *arg, HOST_WIDE_INT value,
break;
case OPT_fdoc_inc_:
- global.params.ddocfiles->push (arg);
+ global.params.ddocfiles.push (arg);
break;
case OPT_fdruntime:
@@ -502,7 +496,7 @@ d_handle_option (size_t scode, const char *arg, HOST_WIDE_INT value,
break;
case OPT_fmodule_file_:
- global.params.modFileAliasStrings->push (arg);
+ global.params.modFileAliasStrings.push (arg);
if (!strchr (arg, '='))
error ("bad argument for %<-fmodule-file%>: %qs", arg);
break;
diff --git a/gcc/d/dmd/MERGE b/gcc/d/dmd/MERGE
index fa94d63..56a47bb 100644
--- a/gcc/d/dmd/MERGE
+++ b/gcc/d/dmd/MERGE
@@ -1,4 +1,4 @@
-cef1e7991121a22f50e9966ea407805015922bc7
+1831b24fffe35fd0e332c194fdf8723ba3c930a5
The first line of this file holds the git revision number of the last
merge done from the dlang/dmd repository.
diff --git a/gcc/d/dmd/dmodule.c b/gcc/d/dmd/dmodule.c
index 09e9547..5bb5447 100644
--- a/gcc/d/dmd/dmodule.c
+++ b/gcc/d/dmd/dmodule.c
@@ -228,7 +228,7 @@ Module *Module::load(Loc loc, Identifiers *packages, Identifier *ident)
{
OutBuffer buf;
OutBuffer dotmods;
- Array<const char *> *ms = global.params.modFileAliasStrings;
+ Array<const char *> *ms = &global.params.modFileAliasStrings;
const size_t msdim = ms ? ms->length : 0;
for (size_t i = 0; i < packages->length; i++)
diff --git a/gcc/d/dmd/doc.c b/gcc/d/dmd/doc.c
index 7c21ab2..e0bf940 100644
--- a/gcc/d/dmd/doc.c
+++ b/gcc/d/dmd/doc.c
@@ -351,12 +351,12 @@ void gendocfile(Module *m)
// Override with DDOCFILE specified in the sc.ini file
char *p = getenv("DDOCFILE");
if (p)
- global.params.ddocfiles->shift(p);
+ global.params.ddocfiles.shift(p);
// Override with the ddoc macro files from the command line
- for (size_t i = 0; i < global.params.ddocfiles->length; i++)
+ for (size_t i = 0; i < global.params.ddocfiles.length; i++)
{
- FileName f((*global.params.ddocfiles)[i]);
+ FileName f(global.params.ddocfiles[i]);
File file(&f);
readFile(m->loc, &file);
// BUG: convert file contents to UTF-8 before use
diff --git a/gcc/d/dmd/globals.h b/gcc/d/dmd/globals.h
index 5b5aac3..8a2ffdc 100644
--- a/gcc/d/dmd/globals.h
+++ b/gcc/d/dmd/globals.h
@@ -145,7 +145,7 @@ struct Param
CHECKACTION checkAction; // action to take when bounds, asserts or switch defaults are violated
DString argv0; // program name
- Array<const char *> *modFileAliasStrings; // array of char*'s of -I module filename alias strings
+ Array<const char *> modFileAliasStrings; // array of char*'s of -I module filename alias strings
Array<const char *> *imppath; // array of char*'s of where to look for import modules
Array<const char *> *fileImppath; // array of char*'s of where to look for file import modules
DString objdir; // .obj/.lib file output directory
@@ -155,7 +155,7 @@ struct Param
bool doDocComments; // process embedded documentation comments
DString docdir; // write documentation file to docdir directory
DString docname; // write documentation file to docname
- Array<const char *> *ddocfiles; // macro include files for Ddoc
+ Array<const char *> ddocfiles; // macro include files for Ddoc
bool doHdrGeneration; // process embedded documentation comments
DString hdrdir; // write 'header' file to docdir directory
@@ -190,10 +190,10 @@ struct Param
Strings runargs; // arguments for executable
// Linker stuff
- Array<const char *> *objfiles;
- Array<const char *> *linkswitches;
- Array<const char *> *libfiles;
- Array<const char *> *dllfiles;
+ Array<const char *> objfiles;
+ Array<const char *> linkswitches;
+ Array<const char *> libfiles;
+ Array<const char *> dllfiles;
DString deffile;
DString resfile;
DString exefile;