Thank you for your detailed explanation of  "dummy parameter"  !

>It is still unclear to me what you are trying to accomplish.
>Implicit typying and implicit interfaces are a compile-time
>thing.
.......
>An -fcheck=implicit-type option that generates a runtime
>error that does not make sense to me unless the aim is
>to slow down the compile code.  The above code would be
>transformed into something like (ignoring passing convention).
>float
>foo(float x)
>{
>  if (runtime_option & fcheck_implicit_type)
 >    runtime_error("'foo' has an implicit type");

>  if (runtime_option & fcheck_implicit_type)
>    runtime_error("'x' has an implicit type");

>  return (x * x);
>}

Here  is the description of the GSoC project :
*Fortran – run-time argument checking.* – In particular older Fortran code,
which does not use modules, but also code which uses implicit-size or
explicit-size arrays is prone to argument mismatches. The goal of this item
is to *add an optional run-time test* which works by storing the
argument-type/size data before the call in a global variable – and check
against it in the callee. (A pointer to the called function is stored
alongside to permit calls from uninstrumented code to instrumented code.)
This project would/could be mentored by Tobias Burnus. Required skills
include C/C++; some knowledge of Fortran helps, but is not needed. *Difficulty
medium, size: 175 hours (medium)*.

"older Fortran code "may indicate the version Fortran 77
I try to regard "an optional run-time test" as a compile option like what
you said "-fcheck=implicit-type" . Is there any other understanding?
(Maybe , the test is "check_implicit_type" , the code you showed to me
above))

Although the optimized code will reduce the code running efficiency, I feel
that this project should have its place!😄😄

Reply via email to