autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Possible regression in AC_FC_WRAPPERS


From: Michael Orlitzky
Subject: Possible regression in AC_FC_WRAPPERS
Date: Wed, 04 Aug 2021 20:30:27 -0400
User-agent: Evolution 3.40.2

Between autoconf-2.69 and autoconf-2.71, the test programs that
AC_FC_WRAPPERS uses to determine its name-mangling scheme has changed.
In 2.69, for example, we have

  #ifdef __cplusplus
  extern "C"
  #endif
  char foobar_ ();
  #ifdef FC_DUMMY_MAIN
  #ifndef FC_DUMMY_MAIN_EQ_F77
  #  ifdef __cplusplus
       extern "C"
  #  endif
     int FC_DUMMY_MAIN() { return 1; }
  #endif
  #endif
  int
  main ()
  {
  return foobar_ ();
    ;
    return 0;
  }

compared with the following in 2.71:

  char foobar_ ();
  #ifdef FC_DUMMY_MAIN
  #ifndef FC_DUMMY_MAIN_EQ_F77
  #  ifdef __cplusplus
       extern "C"
  #  endif
     int FC_DUMMY_MAIN() { return 1; }
  #endif
  #endif
  int
  main (void)
  {
  return foobar_ ();
    ;
    return 0;
  }

The absence of the first #ifdef in 2.71 causes unconditional build
failures (false negatives) when, for example, CC=c++. It's definitely a
bug in the configure.ac that sets CC=$CXX, too, but I figured I'd
report the change nonetheless because I'm not sure what the underlying
intention is.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]