diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index 436c160..3877711 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -3125,11 +3126,17 @@ resolve_function (gfc_expr *expr)
{
if (forall_flag)
- gfc_error ("reference to non-PURE function '%s' at %L inside a "
+ gfc_error ("Reference to non-PURE function '%s' at %L inside a "
"FORALL %s", name,&expr->where,
forall_flag == 2 ? "mask" : "block");
+ else if (do_concurrent_flag)
+ gfc_error ("Reference to non-PURE function '%s' at %L inside a "
+ "DO CONCURRENT block", name,&expr->where);