- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Guys!
I need your help, I'mdebuggingmy code in the following way:
ifort -O0 -check all -c random_module.f90
when I check all I'm having the following warning message thousands of times (I don's care about that warning), how I can turn it off?
forrtl: warning (402): fort: (1): In call to INTERPOLATION_NEG, an array temporary was created for argument #6
Thanks
Juan
1 Solution
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You could try:
-check all -check noarg_temp_created
I am not certain that will work.
If you are passing a POINTER array or an array slice such as A(1:10:2) so that the array elements are not known to be contiguous, and there is not an explicit interface visible telling the compiler that the called routine accepts the array as assumed-shape (:), then the compiler may need to create a temporary copy of the array values, pass the copy, and then copy the results back.
If you are using POINTERs just for dynamic allocation, please use ALLOCATABLE instead. This will eliminate that issue.
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
the quickest way to do that would be to remove the "-check all" flag...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In particular, -check arg_temp_created is enabling this warning. It is telling you that you are passing a non-contiguous array to a routine expecting a contiguous array and that the compiler made a copy of the argument on the stack. This hurts performance so you might want to know about it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Steve Lionel (Intel)
In particular, -check arg_temp_created is enabling this warning. It is telling you that you are passing a non-contiguous array to a routine expecting a contiguous array and that the compiler made a copy of the argument on the stack. This hurts performance so you might want to know about it.
Thank you very much for your prompt response guys!
There is a way to keep check all and turn off that message, and my following question is: what do you mean Steve with non-continuos argument? any way to fix it?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You could try:
-check all -check noarg_temp_created
I am not certain that will work.
If you are passing a POINTER array or an array slice such as A(1:10:2) so that the array elements are not known to be contiguous, and there is not an explicit interface visible telling the compiler that the called routine accepts the array as assumed-shape (:), then the compiler may need to create a temporary copy of the array values, pass the copy, and then copy the results back.
If you are using POINTERs just for dynamic allocation, please use ALLOCATABLE instead. This will eliminate that issue.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page