Some added tips.
Some added tips.You can (and probably should) call for_rtl_init_ from the C++ code. While this won't allow Fortran to catch everything, it will help some.Change the C++ project's Linker > General...
View ArticleI think I almost solve the
I think I almost solve the problem. I added my own try-except block for the calls from C++ to Fortran. In the C++ exception handler am I invoking the Fortran TRACEBACKQQ subroutine. So if there's an...
View ArticleAs far as I know, the
As far as I know, the traceback goes to stderr. There is no control over this other than the environment variables
View ArticleI am working under Windows OS
I am working under Windows OS and I am using the FORTRAN compiler version 2011.9.300 integrated in the MS Visual Studio 2010. The solution prepared by Darek is working: FORTRAN exceptions like...
View ArticleFrank, try adding a call to
Frank, try adding a call to for_rtl_init_ at the start of your program and see if that helps. It can be in a Fortran routine you call at the program start, or you can call it from the C++ (as unmanaged...
View ArticleSteve, thank you for
Steve, thank you for answering."for_rtl_init()" is already called in my example. It does not help and makes no differences for handling of the floating point errors.Calculating the division by zero on...
View ArticleCan you attach a ZIP of a
Can you attach a ZIP of a sample solution that demonstrates the problem? I'd like to try it myself to see what is happening.
View ArticleSteve, the uploaded ZIP
Steve, the uploaded ZIP archive contains the examples projects.Call the procedure "Open TestProject.cmd" top open the solution. The solution file contains the following projects:TestLib: FORTRAN static...
View ArticleFrank, the missing piece here
Frank, the missing piece here is that your Fortran library is not establishing the FP exception environment. This happens with the Fortran console application, where you have set /fpe0, and that causes...
View ArticleSteve,
Steve,yes, this is the missing piece. This is what we want to have and it works.Thank you very much,Frank
View ArticleSteve, yes we are using the
Steve, yes we are using the STDCALL calling convention, here is an example how it is declared in C++:extern "C"{int __stdcall SM_WRITE_MPM(int *ret, void * g);}The FORTRAN Compiler options we are using...
View ArticleIf you are using /iface:cvf,
If you are using /iface:cvf, then you are getting STDCALL so there is no inconsistency.
View ArticleSteve,
Steve,I still could not solve the problem described above (12/18/2013): when calling FORTRAN subroutines a second time the program crashes with a "System.AccessViolationException" error.I think I could...
View ArticleYes, I can look at a test
Yes, I can look at a test application. You can attach a ZIP to a reply here.
View ArticleSteve,
Steve,this is the test program to demonstrate the unsolved system access violation when calling a FORTRAN subroutine a second or subsequent time.The application consist of 4 projects:1. Managed code C#...
View ArticleI'm getting an early error
I'm getting an early error loading the FortranWrapper assembly, and I don't know the managed code environment enough to understand why. All of the projects built successfully, though there's a warning...
View ArticleSteve,
Steve,I cannot reproduce the error loading the FortranWrapper. What is the excact error message? The warning about the dependence on nonexistent CSCInterfaces reference could be ignored (caused somehow...
View ArticleI figured out the error - it
I figured out the error - it is the one explained here: http://blogs.msdn.com/b/keithmg/archive/2012/03/20/strong-name-validatio...I undid the delay loading of DLLs used in that project, and also...
View ArticleSteve,
Steve,is there any new information available about the "system access violation when calling a FORTRAN subroutine a second or subsequent time".Thank you!Frank
View ArticleSorry, no. My guess turned
Sorry, no. My guess turned out to be incorrect. Still working on it.
View Article
More Pages to Explore .....