1 (edited by JohnWasilewski 2013-11-26 14:14:33)

Topic: SF2.6 PROJECT menu OPEN RECENT function

When I switch from my current main project to a library I have built for it, to edit and rebuild the library,
then switch back using   Project menu > Open recent, then clean and re-build the main project, I get this:

Generating Makefile... Okay
==============================================================================
Open Watcom Make Version 1.9 (Built on Feb  4 2013)
Portions Copyright (c) 1988-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
See http://www.openwatcom.org/ for details.
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\mParams.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\mParams.for"
    "C:\Program Files (x86)\Fortran\SF2\fwin\wtouch.exe" -c "modules64\params.mod"
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\mRestr.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\mRestr.for"
    "C:\Program Files (x86)\Fortran\SF2\fwin\wtouch.exe" -c "modules64\restraints.mod"
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\mM.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\mM.for"
    "C:\Program Files (x86)\Fortran\SF2\fwin\wtouch.exe" -c "modules64\m.mod"
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\addlod.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\addlod.for"
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\addmem.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\addmem.for"
    "C:\Program Files (x86)\Fortran\SF2\mingw-w64\bin\gfortran.exe" -c -o "build64\addspr.o" -g -mtune=athlon64 -ID:/JWasilewski/AppData/Local/sfpm/64/include -ID:/JWasilewski/DEV/Fortran/@SF/InStruct120/../IoLibWin/modules64 -fdollar-ok -cpp  -Jmodules64 "..\..\InStruct120\Source\addspr.for"
Error(F38): (modules64\dislin.mod) does not exist and cannot be made from existing files
Error(E02): Make execution terminated

* Failed *

This behaviour repeats when I try it again.

When I exit from SF2.6, then re-start, then select the main project from the start-up prompt, it finds everything and re-builds successfully. 
---
John

Re: SF2.6 PROJECT menu OPEN RECENT function

John,

Is dislin.f90 located in your main project (the one that fails above) or the library project?  I just want to clear up any ambiguity before I dive in looking for the issue.

Jeff Armstrong
Approximatrix, LLC

3 (edited by JohnWasilewski 2013-11-27 06:43:09)

Re: SF2.6 PROJECT menu OPEN RECENT function

Dislin.f90 IS in my library project
It IS NOT in my main executable project.
---
John

Re: SF2.6 PROJECT menu OPEN RECENT function

John,

Do you get the same behavior if you manually load the project via Project->Open and selecting it rather than using the Recent entry?  I'm guessing that you will see the same behavior.

I suspect the indexing functionality has a bug in it when loading a new project.  It probably still thinks the disllin module is part of your project after you load the new project.  I'll look into it now.

Jeff Armstrong
Approximatrix, LLC

Re: SF2.6 PROJECT menu OPEN RECENT function

John,

I just had a look at the code.  When the new project loads, it calls a "clear all" function on the index of modules/functions/subroutines/etc.  Previously it would also purge all known files from the index as well, which would in turn clear out the lists of provided and required modules.  Now, due to some major code changes, it doesn't necessarily delete references to files when "clear all" is called.  This lack of purging of known files meant that the lists of provided and required modules were also never purged.

I've changed it in code, and it will be fixed in Version 2.7.  Thanks for the bug report!

Jeff Armstrong
Approximatrix, LLC