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!😄😄