I'll look at the #if apl_GSL stuff

Henrik

On 12/10/24 15:16, PAUL ROCKWELL wrote:
I just downloaded and built SVN 1799  on Fedora 41 x86_64 and this warning did not appear.
However I had issues reported by others with a linker failure.

I downloaded and installed earlier SVN versions and found that I couldn't reproduce the linker failures. I think some combination of  'make distclean''; svn up -r 17xx' ;./configure (17xx is the SVN that I wanted to test out) seemed to make the linker issue go away.

I have noticed one other thing in Quad_MX.cc <http://quad_mx.cc>,  There's a conditional on line 1289:

#endif // (not) apl_GSL


which seems to be paired with this on line 55

#if apl_GSL


My interpretation is that all of the code between these should not be compiled if apl_GSL is not set in config.h. apl_GSL wouldn't be set if configure didn't find the GSL libraries needed by Quad_MX.

If that's the case, there are additional methods that are present in Quad_MX.cc <http://quad_mx.cc> after the #endif.

#endif   // (not) apl_GSL


//----------------------------------------------------------------------------

int

Quad_MX::axis_compare(const void * key, const void * info)

{

   return strcasecmp(reinterpret_cast<const char *>(key),

reinterpret_cast<const fun_info *>(info)->sub_name);

}

//----------------------------------------------------------------------------

sAxis

Quad_MX::subfun_to_axis(const UCS_string & name) const

{

const UTF8_string function_name_utf8(name);

const char * function_name_str = function_name_utf8.c_str();


  // Note: cannot use FUN_INFO_COUNT = FUN_INFO_SIZE / sizeof(op_desc)

  //       since Apple complains with a bogus error.

  enum { FUN_INFO_SIZE  = sizeof(fun_info),

         FUN_INFO_COUNT = OP_MAX

       };


  if (const void * vp = bsearch(function_name_str, op_desc,

FUN_INFO_COUNT, FUN_INFO_SIZE, axis_compare))

     {

       // found: vp is a fun_info *

       const fun_info * info = reinterpret_cast<const fun_info *>(vp);

       if (info->valence)   return info->code;

     }


  return -1;    // not found

}

//----------------------------------------------------------------------------

Should these appear before the #endif ?

- Paul

On Dec 10, 2024, at 10:45 AM, Hans-Peter Sorge <hanspeterso...@netscape.net> wrote:

Hi Jürgen.

the bug persists.

Best Regards
Hans-Peter

Am 10.12.24 um 13:02 schrieb Dr. Jürgen Sauermann:
Hi Hans-Peter, Bill,

as far as I can see the Apple error is bogus. However, I believe I found
a solution in *SVN 1798*.

Best Regards,
Jürgen


On 12/9/24 22:31, Hans-Peter Sorge wrote:
Sorry - I get some horrible big letters in my original post.

High-res and font settings and manual adjust and Wayland seen not
to go along very well :-(



Am 09.12.24 um 22:22 schrieb Hans-Peter Sorge:
Hi,

Revision 1797 fails with


Quad_MX.cc: In member function 'virtual sAxis Quad_MX::subfun_to_axis(const UCS_string&) const': Quad_MX.cc:1306:27: error: invalid application of 'sizeof' to incomplete type 'Quad_MX::fun_info []'
 1306 |          FUN_INFO_COUNT = sizeof(op_desc) / FUN_INFO_SIZE };
      | ^~~~~~~~~~~~~~~
make[3]: *** [Makefile:4719: apl-Quad_MX.o] Error 1


on Fedora 41,
gcc (GCC) 14.2.1 20240912 (Red Hat 14.2.1-3)

Regards Hans-Peter




Reply via email to