openmopac/mopac

GEO_REF="self"0 requires DEBUG

Closed this issue · 7 comments

Using the latest github pull on linux requires 'DEBUG' to run correctly. If the keyword 'DEBUG' is not used, 0 is assumed to be an unknown keyword.

Can you provide an example of this bug? I just tried a simple example with GEO_REF="self"0, and it worked without the DEBUG keyword.

Here is the input file fl-VMAT.txt (rename to dat if you wish).

The error is following:

         UNRECOGNIZED KEY-WORDS: (0)

          IF THESE ARE DEBUG KEYWORDS, ADD THE KEYWORD "DEBUG".
 *
 *  Errors detected in keywords.  Job stopped here to avoid wasting time.
 *
 *******************************************************************************

 ******************************************************************************
 *                                                                            *
 *     Error and normal termination messages reported in this calculation     *
 *                                                                            *
 * UNRECOGNIZED KEY-WORDS: (0)                                                *
 * IF THESE ARE DEBUG KEYWORDS, ADD THE KEYWORD "DEBUG".                      *
 * JOB ENDED NORMALLY                                                         *
 *                                                                            *
 ******************************************************************************

It does the same even if taking the second + out from the second line and removing additional empty line.

That example is also working for me on both Mac and Linux with the development version. What operating system is this happening on? Are you using CMake to build your executable?

The parsing of keyword arguments in quotes has been adjusted somewhat recently, so this could be a subtle special case that is triggering in a very narrow range of conditions. MOPAC's input parsing is extremely complicated, and I can't efficiently debug a problem unless I can reproduce it and then trace back the problem in GDB or some other debugger.

While I'm not getting the error that you are seeing, the constraint value appended to GEO_REF doesn't seem to be parsed correctly in your example when I set it to a value other than zero, so the parsing isn't correct here even when an error isn't reported. Maybe if I fix this, then your error will also go away.

The CMake version is 3.18.4-2+deb11u1

The problems with GEO_REF that I was able to reproduce have been resolved by this PR. Can you confirm whether or not your problem has been fixed by this update?

It works just dandy! Thank you!