Skip to content

Commit 11518c8

Browse files
committed
diagnostics: move diagnostic.c to diagnostics/context.cc: restore build with GCC 5
Building with GCC 5, with commit 8d9d951 "diagnostics: move diagnostic.c to diagnostics/context.cc", we got: ../../source-gcc/gcc/diagnostics/context.cc: In member function ‘bool diagnostics::context::diagnostic_impl(rich_location*, const diagnostics::metadata*, diagnostics::option_id, const char*, __va_list_tag (*)[1], diagnostics::kind)’: ../../source-gcc/gcc/diagnostics/context.cc:1514:15: error: ‘kind’ is not a class, namespace, or enumeration if (kind == kind::permerror) ^ ../../source-gcc/gcc/diagnostics/context.cc:1517:22: error: ‘kind’ is not a class, namespace, or enumeration m_permissive ? kind::warning : kind::error); ^ ../../source-gcc/gcc/diagnostics/context.cc:1517:38: error: ‘kind’ is not a class, namespace, or enumeration m_permissive ? kind::warning : kind::error); ^ ../../source-gcc/gcc/diagnostics/context.cc:1523:19: error: ‘kind’ is not a class, namespace, or enumeration if (kind == kind::warning || kind == kind::pedwarn) ^ ../../source-gcc/gcc/diagnostics/context.cc:1523:44: error: ‘kind’ is not a class, namespace, or enumeration if (kind == kind::warning || kind == kind::pedwarn) ^ ../../source-gcc/gcc/diagnostics/context.cc: In member function ‘bool diagnostics::context::diagnostic_n_impl(rich_location*, const diagnostics::metadata*, diagnostics::option_id, long unsigned int, const char*, const char*, __va_list_tag (*)[1], diagnostics::kind)’: ../../source-gcc/gcc/diagnostics/context.cc:1554:15: error: ‘kind’ is not a class, namespace, or enumeration if (kind == kind::warning) ^ make[2]: *** [Makefile:1212: diagnostics/context.o] Error 1 Resolve this similar to, for example, commit r14-4521-g08d0f840dc7ad212ab75d094373b01cbfc004e67 "analyzer: fix build with gcc < 6". gcc/ * diagnostics/context.cc (context::diagnostic_impl) (context::diagnostic_n_impl): In presence of formal parameter 'kind', explicitly state 'diagnostics::' scope for 'kind' enum.
1 parent e48e340 commit 11518c8

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

gcc/diagnostics/context.cc

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1511,16 +1511,19 @@ context::diagnostic_impl (rich_location *richloc,
15111511
va_list *ap, enum kind kind)
15121512
{
15131513
diagnostic_info diagnostic;
1514-
if (kind == kind::permerror)
1514+
if (kind == diagnostics::kind::permerror)
15151515
{
15161516
diagnostic_set_info (&diagnostic, gmsgid, ap, richloc,
1517-
m_permissive ? kind::warning : kind::error);
1517+
(m_permissive
1518+
? diagnostics::kind::warning
1519+
: diagnostics::kind::error));
15181520
diagnostic.m_option_id = (opt_id.m_idx != -1 ? opt_id : m_opt_permissive);
15191521
}
15201522
else
15211523
{
15221524
diagnostic_set_info (&diagnostic, gmsgid, ap, richloc, kind);
1523-
if (kind == kind::warning || kind == kind::pedwarn)
1525+
if (kind == diagnostics::kind::warning
1526+
|| kind == diagnostics::kind::pedwarn)
15241527
diagnostic.m_option_id = opt_id;
15251528
}
15261529
diagnostic.m_metadata = metadata;
@@ -1551,7 +1554,7 @@ context::diagnostic_n_impl (rich_location *richloc,
15511554

15521555
const char *text = ngettext (singular_gmsgid, plural_gmsgid, gtn);
15531556
diagnostic_set_info_translated (&diagnostic, text, ap, richloc, kind);
1554-
if (kind == kind::warning)
1557+
if (kind == diagnostics::kind::warning)
15551558
diagnostic.m_option_id = opt_id;
15561559
diagnostic.m_metadata = metadata;
15571560
return report_diagnostic (&diagnostic);

0 commit comments

Comments
 (0)