aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-family/c-ada-spec.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2021-09-03 11:18:01 +0200
committerEric Botcazou <ebotcazou@adacore.com>2021-09-03 11:19:23 +0200
commit8d34ffb4e8ed5300d0276b55f573add6db2517e8 (patch)
tree6eef28190e3a3879ebcdcb7bac9cefc6c1fd3de0 /gcc/c-family/c-ada-spec.c
parent090f0d78f194e3cda23fe904016db77ea36c38fa (diff)
downloadgcc-8d34ffb4e8ed5300d0276b55f573add6db2517e8.zip
gcc-8d34ffb4e8ed5300d0276b55f573add6db2517e8.tar.gz
gcc-8d34ffb4e8ed5300d0276b55f573add6db2517e8.tar.bz2
Improve compatibility of -fdump-ada-spec with warnings
This makes sure that the style and warning settings used in the C/C++ bindings generated by -fdump-ada-spec do not leak into the units that use them. gcc/c-family/ * c-ada-spec.c (dump_ads): Generate pragmas to disable style checks and -gnatwu warning for the package specification.
Diffstat (limited to 'gcc/c-family/c-ada-spec.c')
-rw-r--r--gcc/c-family/c-ada-spec.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/c-family/c-ada-spec.c b/gcc/c-family/c-ada-spec.c
index 827bcc7..b197d55 100644
--- a/gcc/c-family/c-ada-spec.c
+++ b/gcc/c-family/c-ada-spec.c
@@ -3440,11 +3440,12 @@ dump_ads (const char *source_file,
dump_ada_nodes (&pp, source_file);
/* We require Ada 2012 syntax, so generate corresponding pragma. */
- fputs ("pragma Ada_2012;\n", f);
+ fputs ("pragma Ada_2012;\n\n", f);
/* Disable style checks and warnings on unused entities since this file
is auto-generated and always has a with clause for Interfaces.C. */
- fputs ("pragma Style_Checks (Off);\npragma Warnings (\"U\");\n\n", f);
+ fputs ("pragma Style_Checks (Off);\n", f);
+ fputs ("pragma Warnings (Off, \"-gnatwu\");\n\n", f);
/* Dump withs. */
dump_ada_withs (f);
@@ -3452,7 +3453,10 @@ dump_ads (const char *source_file,
fprintf (f, "\npackage %s is\n\n", pkg_name);
pp_write_text_to_stream (&pp);
/* ??? need to free pp */
- fprintf (f, "end %s;\n", pkg_name);
+ fprintf (f, "end %s;\n\n", pkg_name);
+
+ fputs ("pragma Style_Checks (On);\n", f);
+ fputs ("pragma Warnings (On, \"-gnatwu\");\n", f);
fclose (f);
}