This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [gomp4] lto error message


On Tue, Oct 20, 2015 at 15:54:45 -0400, Nathan Sidwell wrote:
> @@ -1209,16 +1209,11 @@ input_overwrite_node (struct lto_file_de
>  
>    if (!success)
>      {
> -      if (flag_openacc)
> -	{
> -	  if (TREE_CODE (node->decl) == FUNCTION_DECL)
> -	    error ("Missing routine function %<%s%>", node->name ());
> -	  else
> -	    error ("Missing declared variable %<%s%>", node->name ());
> -	}
> -
> +      gcc_assert (flag_openacc);
> +      if (TREE_CODE (node->decl) == FUNCTION_DECL)
> +	error ("missing OpenACC %<routine%> function %qD", node->decl);
>        else
> -	gcc_unreachable ();
> +	error ("missing OpenACC %<declare%> variable %qD", node->decl);
>      }
>  }

There might be a situation when some func or var is lost during regular LTO,
even if flag_openacc is present.  In this case "missing OpenACC ..." message
would be wrong.  And if flag_openacc is absent, gcc_assert (flag_openacc) is a
bit confusing.  We disscussed this with Cesar here:
https://gcc.gnu.org/ml/gcc-patches/2015-07/msg02076.html

  -- Ilya


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]