Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Why debugger does not stop on line in code

Chris_H_3
Beginner
536 Views

Dear Steve;

 

This problem has been covered, but I cannot achieve the answer you got.  If I build a console app with this code:

program testinputconversionerror

Character*1 cdum1

Integer iwant

cdum1 = 'a'

Read(cdum1,*)iwant

Write(6,*)iwant

end

and run it, I get the expected input conversion error.  The error on the command line shows the attached screen shot and the debugger in VS2015 goes to the 'no symbols loaded' window (shown in attached zip).  Why doesn't the debugger show the line of code in the studio?  Please let me know.  Thank you.

 

Sincerely,

CHobbs

0 Kudos
9 Replies
jimdempseyatthecove
Honored Contributor III
536 Views

>>VS2015 goes to the 'no symbols loaded' window

Are you building the Debug version?

If the error occurs in the call stack at a depth inside a library, then you will see 'no symbols loaded'...
... for the library. What you need to do then is to look in the Call Stack window (open if necessary), then click on an/the upper level that represents code of your program.

Jim Dempsey

0 Kudos
Chris_H_3
Beginner
536 Views

Dear Jim;

 

Hello.  Thank you for the quick reply.  I opened the stack window, but cannot find anything in the upper level that you are referring to.  A screen shot is attached.  Is what you are talking about visible?  Please let me know.  Thank you.

 

Sincerely,

CHobbs

0 Kudos
Kevin_D_Intel
Employee
536 Views

We are not seeing any screen snaps or attachments. Can you retry attaching those? 

0 Kudos
Chris_H_3
Beginner
536 Views

Here I try again.

0 Kudos
jimdempseyatthecove
Honored Contributor III
536 Views

Your .png shows Platform as x86.

Create a new Solution and Project as Win32, run a test. if that works, you can create a new platform of x64 if you have a 64-bit CPU.

The Platform x86 is generally used for C# and other like systems where you want a generic "8086" derived CPU of any type. Fortran expects either IA32 (Win32) or Intel64 (x64), but not both (to be determined at runtime)

Jim Dempsey

0 Kudos
Kevin_D_Intel
Employee
536 Views

Good eye and suggestion Jim. I can't determine how x86 can be setup for a Fortran project.

Chris - how did you create your console1 project?

0 Kudos
Chris_H_3
Beginner
536 Views

Thanks for the suggestion, Jim.  I did not do anything other than select a console, fortran application in the VS2015.  Attached is the config manager that leads to the x86 showing in the window.  It seems to indicate that I am making a Win32 app.  Problem is, not of the selections allow me to change to anything.  They just say <New> or <Edit> when I try to change any of the entries. 

0 Kudos
Chris_H_3
Beginner
536 Views

It worked when I set the platform to x64!  Not sure why it didn't with the x32, but the debugger put me at the line in the source code where the offense occurred.  Thank you, Jim!

0 Kudos
Kevin_D_Intel
Employee
536 Views

I can recreate this issue now, thank you. Under VS2015, new Fortran Console projects (at least) set the default Active solution platform to x86 instead of Win32. I have escalated this to our Developers.

You can create the Win32 solution platform type the same as is done to create the x64 type. Open Build > Configuration Manager, in the Active solution platform selection click <New>. For new platform select Win32 and in Copy Settings from select x86, then click OK. This creates the Win32 configuration. To avoid confusion delete the x86 configuration (via Configuration Manager, in the Active solution platform selection click <edit>, left-click x86 to select and then click Remove)

(Internal tracking id: DPD200417048)

0 Kudos
Reply