WARNING: [license.mk] Every package should define a LICENSE.
===> Building for libcomprex-0.3.3nb37
/opt/pkg/bin/bmake  all-recursive
Making all in debian
Making all in docs
Making all in api
Making all in html
Making all in man
Making all in intl
Making all in libltdl
/opt/pkg/bin/mksh ./libtool --mode=compile clang -DHAVE_CONFIG_H -I. -I. -I.   -I/opt/pkg/include -DLDAP_DEPRECATED  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -c ltdl.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -c ltdl.c  -fno-common -DPIC -o .libs/ltdl.o
ltdl.c:517:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLFREE (argz);
    ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:517:5: note: '{' token is here
    LT_DLFREE (argz);
    ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:517:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLFREE (argz);
    ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:517:5: note: ')' token is here
    LT_DLFREE (argz);
    ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:782:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:782:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:782:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:782:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:793:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_MUTEX_ARGS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:793:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_MUTEX_ARGS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:793:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_MUTEX_ARGS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:793:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_MUTEX_ARGS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:826:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:826:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:826:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:826:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:837:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:837:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:837:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:837:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:848:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:848:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:848:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:848:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:853:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_ERRORCODE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:853:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_ERRORCODE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:853:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_ERRORCODE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:853:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_ERRORCODE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:859:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (lt_dlerror_strings[errindex]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:859:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (lt_dlerror_strings[errindex]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:859:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (lt_dlerror_strings[errindex]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:859:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (lt_dlerror_strings[errindex]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:864:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (user_error_strings[errindex - LT_ERROR_MAX]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:864:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (user_error_strings[errindex - LT_ERROR_MAX]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:864:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (user_error_strings[errindex - LT_ERROR_MAX]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:864:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (user_error_strings[errindex - LT_ERROR_MAX]);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:867:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:867:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:867:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:867:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:878:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:878:5: note: '{' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:878:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:878:5: note: ')' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:889:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:889:5: note: '{' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:889:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:889:5: note: ')' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:899:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:899:5: note: '{' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:899:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:899:5: note: ')' token is here
    LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:975:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_OPEN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:975:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_OPEN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:975:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_OPEN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:975:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_OPEN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:990:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_CLOSE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:990:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_CLOSE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:990:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_CLOSE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:990:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (DLERROR (CANNOT_CLOSE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1007:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1007:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (DLERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1007:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (DLERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1007:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (DLERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1473:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1473:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1473:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1473:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1481:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1481:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1481:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1481:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1491:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1491:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1491:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1491:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1499:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1499:7: note: '{' token is here
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:1499:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:1499:7: note: ')' token is here
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1503:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1503:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1503:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1503:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1524:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1524:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1524:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1524:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1550:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1550:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1550:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1550:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1562:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1562:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1562:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1562:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1567:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_SYMBOLS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1567:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_SYMBOLS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1567:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_SYMBOLS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1567:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_SYMBOLS));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1597:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1597:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1597:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1597:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1600:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1600:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1600:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1600:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1633:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1633:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1633:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1633:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1724:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1724:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1724:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1724:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1751:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INIT_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1751:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INIT_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1751:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INIT_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1751:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INIT_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1756:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (DLOPEN_NOT_SUPPORTED));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1756:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (DLOPEN_NOT_SUPPORTED));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1756:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (DLOPEN_NOT_SUPPORTED));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1756:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (DLOPEN_NOT_SUPPORTED));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1761:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1761:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1761:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1761:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1780:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1780:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1780:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1780:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1785:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1785:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1785:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1785:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1795:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1795:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1795:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1795:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1797:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1797:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1797:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1797:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1808:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1808:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1808:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1808:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1813:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SHUTDOWN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1813:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SHUTDOWN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1813:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SHUTDOWN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1813:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SHUTDOWN));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1863:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMEM_REASSIGN (loader, next);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1863:4: note: '{' token is here
          LT_DLMEM_REASSIGN (loader, next);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:1863:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMEM_REASSIGN (loader, next);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:1863:4: note: ')' token is here
          LT_DLMEM_REASSIGN (loader, next);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1869:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1869:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1869:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1869:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1883:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:40: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1883:3: note: '{' token is here
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:54: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1883:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:37: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                ^
ltdl.c:1883:3: note: ')' token is here
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:39: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1884:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1884:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:1884:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1884:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1944:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (cur->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1944:7: note: '{' token is here
      LT_DLFREE (cur->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:1944:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (cur->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:1944:7: note: ')' token is here
      LT_DLFREE (cur->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1950:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1950:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:1950:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:1950:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:1953:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:1953:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:1953:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:1953:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2004:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2004:3: note: '{' token is here
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2004:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2004:3: note: ')' token is here
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2135:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2135:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2135:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:2135:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2138:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2138:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2138:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:2138:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2168:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2168:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:2168:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2168:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2172:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2172:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2172:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:2172:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2190:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (filename);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2190:4: note: '{' token is here
          LT_DLFREE (filename);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2190:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (filename);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2190:4: note: ')' token is here
          LT_DLFREE (filename);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2215:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2215:3: note: '{' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2215:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2215:3: note: ')' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2216:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2216:3: note: '{' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2216:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2216:3: note: ')' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2217:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2217:3: note: '{' token is here
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2217:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2217:3: note: ')' token is here
  LT_DLFREE (filename);
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2219:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2219:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:2219:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2219:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2248:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (*pdir);
      ^~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2248:7: note: '{' token is here
      LT_DLFREE (*pdir);
      ^~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2248:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (*pdir);
      ^~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2248:7: note: ')' token is here
      LT_DLFREE (*pdir);
      ^~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2330:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2330:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:2330:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2330:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2374:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2374:3: note: '{' token is here
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2374:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2374:3: note: ')' token is here
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2377:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2377:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:2377:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2377:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2460:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (names[i]);
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2460:7: note: '{' token is here
      LT_DLFREE (names[i]);
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2460:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (names[i]);
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2460:7: note: ')' token is here
      LT_DLFREE (names[i]);
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2464:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (names);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2464:3: note: '{' token is here
  LT_DLFREE (names);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2464:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (names);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2464:3: note: ')' token is here
  LT_DLFREE (names);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2502:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (*dest);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2502:3: note: '{' token is here
  LT_DLFREE (*dest);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2502:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (*dest);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2502:3: note: ')' token is here
  LT_DLFREE (*dest);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2529:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (dlname);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2529:3: note: '{' token is here
  LT_DLFREE (dlname);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2529:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (dlname);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2529:3: note: ')' token is here
  LT_DLFREE (dlname);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2530:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (oldname);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2530:3: note: '{' token is here
  LT_DLFREE (oldname);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2530:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (oldname);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2530:3: note: ')' token is here
  LT_DLFREE (oldname);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2531:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (libdir);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2531:3: note: '{' token is here
  LT_DLFREE (libdir);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2531:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (libdir);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2531:3: note: ')' token is here
  LT_DLFREE (libdir);
  ^~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2532:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (deplibs);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2532:3: note: '{' token is here
  LT_DLFREE (deplibs);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2532:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (deplibs);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2532:3: note: ')' token is here
  LT_DLFREE (deplibs);
  ^~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2554:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:40: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2554:3: note: '{' token is here
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:54: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2554:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:37: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                ^
ltdl.c:2554:3: note: ')' token is here
  LT_DLMUTEX_GETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:39: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2571:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2571:4: note: '{' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2571:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2571:4: note: ')' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2608:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMEM_REASSIGN (base_name, canonical);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2608:5: note: '{' token is here
    LT_DLMEM_REASSIGN (base_name, canonical);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:2608:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
    LT_DLMEM_REASSIGN (base_name, canonical);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:2608:5: note: ')' token is here
    LT_DLMEM_REASSIGN (base_name, canonical);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2663:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_LOCK ();
          ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2663:4: note: '{' token is here
          LT_DLMUTEX_LOCK ();
          ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:2663:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_LOCK ();
          ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2663:4: note: ')' token is here
          LT_DLMUTEX_LOCK ();
          ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2667:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2667:4: note: '{' token is here
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:2667:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2667:4: note: ')' token is here
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2685:17: warning: address of array 'sys_search_path' will always evaluate to 'true' [-Wpointer-bool-conversion]
          if (!file && sys_search_path)
                    ~~ ^~~~~~~~~~~~~~~
ltdl.c:2700:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2700:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2700:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:2700:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2793:5: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
                  LT_DLMEM_REASSIGN (dlname, last_libname);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2793:5: note: '{' token is here
                  LT_DLMEM_REASSIGN (dlname, last_libname);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:2793:5: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
                  LT_DLMEM_REASSIGN (dlname, last_libname);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:2793:5: note: ')' token is here
                  LT_DLMEM_REASSIGN (dlname, last_libname);
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2802:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (line);
      ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2802:7: note: '{' token is here
      LT_DLFREE (line);
      ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2802:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (line);
      ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2802:7: note: ')' token is here
      LT_DLFREE (line);
      ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2812:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2812:4: note: '{' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2812:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2812:4: note: ')' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2837:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2837:4: note: '{' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2837:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2837:4: note: ')' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2883:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2883:4: note: '{' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2883:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2883:4: note: ')' token is here
          LT_DLFREE (*phandle);
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2890:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMEM_REASSIGN (*phandle, newhandle);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2890:3: note: '{' token is here
  LT_DLMEM_REASSIGN (*phandle, newhandle);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:2890:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMEM_REASSIGN (*phandle, newhandle);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:2890:3: note: ')' token is here
  LT_DLMEM_REASSIGN (*phandle, newhandle);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2895:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMEM_REASSIGN ((*phandle)->info.name, name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2895:7: note: '{' token is here
      LT_DLMEM_REASSIGN ((*phandle)->info.name, name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:2895:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMEM_REASSIGN ((*phandle)->info.name, name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:2895:7: note: ')' token is here
      LT_DLMEM_REASSIGN ((*phandle)->info.name, name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2897:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2897:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:2897:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2897:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2900:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2900:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:2900:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:2900:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2903:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2903:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2903:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:2903:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (saved_error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2906:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (dir);
  ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2906:3: note: '{' token is here
  LT_DLFREE (dir);
  ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2906:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (dir);
  ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2906:3: note: ')' token is here
  LT_DLFREE (dir);
  ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2907:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (name);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2907:3: note: '{' token is here
  LT_DLFREE (name);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2907:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (name);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2907:3: note: ')' token is here
  LT_DLFREE (name);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2908:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2908:3: note: '{' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2908:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2908:3: note: ')' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2934:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:40: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2934:3: note: '{' token is here
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:54: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:2934:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:37: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                ^
ltdl.c:2934:3: note: ')' token is here
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:39: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:2992:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:2992:7: note: '{' token is here
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:2992:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:2992:7: note: ')' token is here
      LT_DLFREE (tmp);
      ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3026:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3026:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3026:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3026:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (LT_DLSTRERROR (FILE_NOT_FOUND));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3027:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (tmp);
  ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3027:3: note: '{' token is here
  LT_DLFREE (tmp);
  ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3027:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (tmp);
  ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3027:3: note: ')' token is here
  LT_DLFREE (tmp);
  ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3046:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3046:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3046:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3046:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3049:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3049:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3049:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3049:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (UNKNOWN));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3143:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (buf);
  ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3143:3: note: '{' token is here
  LT_DLFREE (buf);
  ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3143:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (buf);
  ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3143:3: note: ')' token is here
  LT_DLFREE (buf);
  ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3212:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3212:3: note: '{' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3212:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3212:3: note: ')' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3276:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3276:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3276:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3276:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3288:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3288:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3288:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3288:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3316:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->caller_data);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3316:7: note: '{' token is here
      LT_DLFREE (handle->caller_data);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3316:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->caller_data);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3316:7: note: ')' token is here
      LT_DLFREE (handle->caller_data);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3318:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3318:7: note: '{' token is here
      LT_DLFREE (handle->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3318:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3318:7: note: ')' token is here
      LT_DLFREE (handle->info.filename);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3319:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->info.name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3319:7: note: '{' token is here
      LT_DLFREE (handle->info.name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3319:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle->info.name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3319:7: note: ')' token is here
      LT_DLFREE (handle->info.name);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3320:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle);
      ^~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3320:7: note: '{' token is here
      LT_DLFREE (handle);
      ^~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3320:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (handle);
      ^~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3320:7: note: ')' token is here
      LT_DLFREE (handle);
      ^~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3327:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CLOSE_RESIDENT_MODULE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3327:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CLOSE_RESIDENT_MODULE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3327:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CLOSE_RESIDENT_MODULE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3327:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CLOSE_RESIDENT_MODULE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3332:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3332:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3332:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3332:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3350:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3350:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3350:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3350:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3356:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3356:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3356:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3356:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3372:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (BUFFER_OVERFLOW));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3372:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (BUFFER_OVERFLOW));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3372:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (BUFFER_OVERFLOW));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3372:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (BUFFER_OVERFLOW));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3382:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_GETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:40: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3382:7: note: '{' token is here
      LT_DLMUTEX_GETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:54: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3382:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_GETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:37: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                ^
ltdl.c:3382:7: note: ')' token is here
      LT_DLMUTEX_GETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:39: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3404:8: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
              LT_DLFREE (sym);
              ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3404:8: note: '{' token is here
              LT_DLFREE (sym);
              ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3404:8: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
              LT_DLFREE (sym);
              ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3404:8: note: ')' token is here
              LT_DLFREE (sym);
              ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3408:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3408:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3408:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3408:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (saved_error);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3425:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (sym);
      ^~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3425:7: note: '{' token is here
      LT_DLFREE (sym);
      ^~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3425:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLFREE (sym);
      ^~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3425:7: note: ')' token is here
      LT_DLFREE (sym);
      ^~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3436:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:40: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3436:3: note: '{' token is here
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:753:54: note: expanded from macro 'LT_DLMUTEX_GETERROR'
#define LT_DLMUTEX_GETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3436:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:37: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                ^
ltdl.c:3436:3: note: ')' token is here
  LT_DLMUTEX_GETERROR (error);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:756:39: note: expanded from macro 'LT_DLMUTEX_GETERROR'
        else    (errormsg) = lt_dllast_error;   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3437:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (0);
  ^~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3437:3: note: '{' token is here
  LT_DLMUTEX_SETERROR (0);
  ^~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3437:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_SETERROR (0);
  ^~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3437:3: note: ')' token is here
  LT_DLMUTEX_SETERROR (0);
  ^~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3505:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMEM_REASSIGN (*ppath,  argz);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:35: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3505:3: note: '{' token is here
  LT_DLMEM_REASSIGN (*ppath,  argz);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:195:49: note: expanded from macro 'LT_DLMEM_REASSIGN'
#define LT_DLMEM_REASSIGN(p, q)                 LT_STMT_START { \
                                                              ^
ltdl.c:3505:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMEM_REASSIGN (*ppath,  argz);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:7: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                ^
ltdl.c:3505:3: note: ')' token is here
  LT_DLMEM_REASSIGN (*ppath,  argz);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:197:9: note: expanded from macro 'LT_DLMEM_REASSIGN'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3508:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3508:3: note: '{' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3508:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3508:3: note: ')' token is here
  LT_DLFREE (canonical);
  ^~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3509:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3509:3: note: '{' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3509:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3509:3: note: ')' token is here
  LT_DLFREE (argz);
  ^~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3522:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3522:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3522:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3522:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3525:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3525:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3525:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3525:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3540:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3540:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3540:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3540:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3544:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3544:4: note: '{' token is here
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3544:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3544:4: note: ')' token is here
          LT_DLMUTEX_UNLOCK ();
          ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3545:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_POSITION));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3545:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_POSITION));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3545:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_POSITION));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3545:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_POSITION));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3548:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3548:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3548:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3548:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3553:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3553:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3553:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3553:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3559:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3559:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3559:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3559:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3571:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3571:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3571:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3571:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3572:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3572:3: note: '{' token is here
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3572:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3572:3: note: ')' token is here
  LT_DLFREE (user_search_path);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3573:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3573:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3573:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3573:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3580:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3580:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3580:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3580:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3583:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3583:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3583:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3583:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3593:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3593:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3593:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3593:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3595:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3595:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3595:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3595:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3608:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3608:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3608:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3608:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3625:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3625:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3625:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3625:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3643:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3643:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3643:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3643:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_HANDLE));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3665:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3665:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3665:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3665:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3680:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3680:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3680:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3680:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3691:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3691:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3691:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3691:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3693:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3693:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3693:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3693:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3710:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3710:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3710:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3710:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3748:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3748:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3748:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3748:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3762:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3762:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3762:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3762:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3777:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3777:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3777:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3777:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3801:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3801:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3801:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3801:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3819:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3819:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3819:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3819:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3852:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3852:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3852:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3852:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3863:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3863:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3863:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3863:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3878:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3878:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3878:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3878:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3882:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3882:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3882:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3882:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3889:4: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (REMOVE_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3889:4: note: '{' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (REMOVE_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3889:4: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (REMOVE_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3889:4: note: ')' token is here
          LT_DLMUTEX_SETERROR (LT_DLSTRERROR (REMOVE_LOADER));
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3921:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (place);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:2: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
        ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3921:3: note: '{' token is here
  LT_DLFREE (place);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:16: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                      ^
ltdl.c:3921:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLFREE (place);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:60: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                  ^
ltdl.c:3921:3: note: ')' token is here
  LT_DLFREE (place);
  ^~~~~~~~~~~~~~~~~
ltdl.c:188:62: note: expanded from macro 'LT_DLFREE'
        LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END
                                                                    ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3924:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3924:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3924:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3924:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3935:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3935:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3935:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3935:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3937:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3937:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3937:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3937:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3950:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3950:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3950:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3950:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3952:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3952:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3952:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3952:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3956:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3956:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3956:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3956:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3970:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3970:7: note: '{' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3970:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3970:7: note: ')' token is here
      LT_DLMUTEX_LOCK ();
      ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3972:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3972:7: note: '{' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3972:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3972:7: note: ')' token is here
      LT_DLMUTEX_UNLOCK ();
      ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3976:7: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3976:7: note: '{' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:749:54: note: expanded from macro 'LT_DLMUTEX_SETERROR'
#define LT_DLMUTEX_SETERROR(errormsg)           LT_STMT_START { \
                                                              ^
ltdl.c:3976:7: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:38: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                ^
ltdl.c:3976:7: note: ')' token is here
      LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ltdl.c:752:40: note: expanded from macro 'LT_DLMUTEX_SETERROR'
        else    lt_dllast_error = (errormsg);   } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3988:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:29: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3988:3: note: '{' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:743:43: note: expanded from macro 'LT_DLMUTEX_LOCK'
#define LT_DLMUTEX_LOCK()                       LT_STMT_START { \
                                                              ^
ltdl.c:3988:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:7: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3988:3: note: ')' token is here
  LT_DLMUTEX_LOCK ();
  ^~~~~~~~~~~~~~~~~~
ltdl.c:745:9: note: expanded from macro 'LT_DLMUTEX_LOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
ltdl.c:3996:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:31: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                ^~~~~~~~~~~~~
./ltdl.h:68:38: note: expanded from macro 'LT_STMT_START'
#  define LT_STMT_START        (void)(
                                     ^
ltdl.c:3996:3: note: '{' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:746:45: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
#define LT_DLMUTEX_UNLOCK()                     LT_STMT_START { \
                                                              ^
ltdl.c:3996:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro]
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:7: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                ^
ltdl.c:3996:3: note: ')' token is here
  LT_DLMUTEX_UNLOCK ();
  ^~~~~~~~~~~~~~~~~~~~
ltdl.c:748:9: note: expanded from macro 'LT_DLMUTEX_UNLOCK'
                                                } LT_STMT_END
                                                  ^~~~~~~~~~~
./ltdl.h:69:32: note: expanded from macro 'LT_STMT_END'
#  define LT_STMT_END          )
                               ^
317 warnings generated.
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -c ltdl.c -o ltdl.o >/dev/null 2>&1
/opt/pkg/bin/mksh ./libtool --mode=link clang  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -L/opt/pkg/lib -o libltdlc.la   ltdl.lo -ldl -lintl -liconv
libtool: link: ar cr .libs/libltdlc.a .libs/ltdl.o 
libtool: link: ranlib .libs/libltdlc.a
libtool: link: ( cd ".libs" && rm -f "libltdlc.la" && ln -s "../libltdlc.la" "libltdlc.la" )
Making all in modules
Making all in archive
Making all in ar
source='ar.c' object='ar.lo' libtool=yes  depfile='.deps/ar.Plo' tmpdepfile='.deps/ar.TPlo'  depmode=gcc3 /opt/pkg/bin/mksh ../../../depcomp  /opt/pkg/bin/mksh ../../../libtool --mode=compile clang -DHAVE_CONFIG_H -I. -I. -I../../..  -I../../..  -I/opt/pkg/include -DLDAP_DEPRECATED  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -Wall -c -o ar.lo `test -f 'ar.c' || echo './'`ar.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT ar.lo -MD -MP -MF .deps/ar.TPlo.92897 -c ar.c  -fno-common -DPIC -o .libs/ar.o
ar.c:65:10: warning: variable 'file' set but not used [-Wunused-but-set-variable]
        CxFile *file;
                ^
ar.c:319:39: warning: format specifies type 'int' but the argument has type 'size_t' (aka 'unsigned long') [-Wformat]
                i = snprintf(header.size, 10, "%d", symtabLen);
                                               ~~   ^~~~~~~~~
                                               %zu
/Applications/Xcode-13.4.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/secure/_stdio.h:57:62: note: expanded from macro 'snprintf'
  __builtin___snprintf_chk (str, len, 0, __darwin_obsz(str), __VA_ARGS__)
                                                             ^~~~~~~~~~~
ar.c:373:8: warning: 'snprintf' will always overflow; destination buffer has size 10, but size argument is 20 [-Wbuiltin-memcpy-chk-size]
                        i = snprintf(header.size, 20, "%u",  cxGetFileSize(file));
                            ^
/Applications/Xcode-13.4.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/secure/_stdio.h:57:3: note: expanded from macro 'snprintf'
  __builtin___snprintf_chk (str, len, 0, __darwin_obsz(str), __VA_ARGS__)
  ^
3 warnings generated.
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT ar.lo -MD -MP -MF .deps/ar.TPlo.92897 -c ar.c -o ar.o >/dev/null 2>&1
source='header.c' object='header.lo' libtool=yes  depfile='.deps/header.Plo' tmpdepfile='.deps/header.TPlo'  depmode=gcc3 /opt/pkg/bin/mksh ../../../depcomp  /opt/pkg/bin/mksh ../../../libtool --mode=compile clang -DHAVE_CONFIG_H -I. -I. -I../../..  -I../../..  -I/opt/pkg/include -DLDAP_DEPRECATED  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -Wall -c -o header.lo `test -f 'header.c' || echo './'`header.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT header.lo -MD -MP -MF .deps/header.TPlo.93236 -c header.c  -fno-common -DPIC -o .libs/header.o
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT header.lo -MD -MP -MF .deps/header.TPlo.93236 -c header.c -o header.o >/dev/null 2>&1
source='utils.c' object='utils.lo' libtool=yes  depfile='.deps/utils.Plo' tmpdepfile='.deps/utils.TPlo'  depmode=gcc3 /opt/pkg/bin/mksh ../../../depcomp  /opt/pkg/bin/mksh ../../../libtool --mode=compile clang -DHAVE_CONFIG_H -I. -I. -I../../..  -I../../..  -I/opt/pkg/include -DLDAP_DEPRECATED  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -Wall -c -o utils.lo `test -f 'utils.c' || echo './'`utils.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT utils.lo -MD -MP -MF .deps/utils.TPlo.93489 -c utils.c  -fno-common -DPIC -o .libs/utils.o
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../../.. -I/Users/pbulk/build/archivers/libcomprex/work/.buildlink/include -DLDAP_DEPRECATED -pipe -Os -DLDAP_DEPRECATED -Wall -MT utils.lo -MD -MP -MF .deps/utils.TPlo.93489 -c utils.c -o utils.o >/dev/null 2>&1
/opt/pkg/bin/mksh ../../../libtool --mode=link clang  -pipe -Os -I/opt/pkg/include -DLDAP_DEPRECATED -Wall   -L/opt/pkg/lib -o libar.la -rpath /opt/pkg/lib/comprex/archive -no-undefined -module -avoid-version ar.lo header.lo utils.lo  -lintl -liconv
libtool: link: clang  -o .libs/libar.so -bundle  .libs/ar.o .libs/header.o .libs/utils.o   -L/Users/pbulk/build/archivers/libcomprex/work/.buildlink/lib /Users/pbulk/build/archivers/libcomprex/work/.buildlink/lib/libintl.dylib /Users/pbulk/build/archivers/libcomprex/work/.buildlink/lib/libiconv.dylib  -Os  
Undefined symbols for architecture arm64:
  "_cxClose", referenced from:
      _saveArchive in ar.o
  "_cxDestroyFsIterator", referenced from:
      _saveArchive in ar.o
  "_cxDirAddFile", referenced from:
      _readArchive in ar.o
  "_cxGetArchiveRoot", referenced from:
      _readArchive in ar.o
  "_cxGetFileArchive", referenced from:
      _openFile in ar.o
      ___readFunc in ar.o
  "_cxGetFileCompressedSize", referenced from:
      ___readFunc in ar.o
      ___seekFunc in ar.o
  "_cxGetFileDate", referenced from:
      _saveArchive in ar.o
  "_cxGetFileGid", referenced from:
      _saveArchive in ar.o
  "_cxGetFileMode", referenced from:
      _saveArchive in ar.o
  "_cxGetFileName", referenced from:
      _saveArchive in ar.o
  "_cxGetFilePhysicalPath", referenced from:
      _saveArchive in ar.o
  "_cxGetFileSize", referenced from:
      _readArchive in ar.o
      _saveArchive in ar.o
  "_cxGetFileUid", referenced from:
      _saveArchive in ar.o
  "_cxGetFsIterFirst", referenced from:
      _saveArchive in ar.o
  "_cxGetFsIterNext", referenced from:
      _saveArchive in ar.o
  "_cxGetFsNodeType", referenced from:
      _saveArchive in ar.o
  "_cxNewFile", referenced from:
      _readArchive in ar.o
  "_cxNewFp", referenced from:
      _openFile in ar.o
  "_cxNewFsIterator", referenced from:
      _saveArchive in ar.o
  "_cxOpenFile", referenced from:
      _saveArchive in ar.o
  "_cxRead", referenced from:
      _readArchive in ar.o
      _saveArchive in ar.o
      ___readFunc in ar.o
      _cxArValidateMagic in header.o
      _cxArReadHeader in header.o
  "_cxRegisterModule", referenced from:
      _initComprexModule in ar.o
  "_cxSeek", referenced from:
      _readArchive in ar.o
      _openFile in ar.o
      ___readFunc in ar.o
  "_cxSetArchiveType", referenced from:
      _readArchive in ar.o
  "_cxSetCloseFunc", referenced from:
      _openFile in ar.o
  "_cxSetFileCompressedSize", referenced from:
      _readArchive in ar.o
  "_cxSetFileDate", referenced from:
      _readArchive in ar.o
  "_cxSetFileGid", referenced from:
      _readArchive in ar.o
  "_cxSetFileMode", referenced from:
      _readArchive in ar.o
  "_cxSetFileName", referenced from:
      _readArchive in ar.o
  "_cxSetFileSize", referenced from:
      _readArchive in ar.o
  "_cxSetFileUid", referenced from:
      _readArchive in ar.o
  "_cxSetReadFunc", referenced from:
      _openFile in ar.o
  "_cxSetSeekFunc", referenced from:
      _openFile in ar.o
  "_cxSetWriteFunc", referenced from:
      _openFile in ar.o
  "_cxTell", referenced from:
      _readArchive in ar.o
      ___readFunc in ar.o
  "_cxWrite", referenced from:
      _saveArchive in ar.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
*** [libar.la] Error code 1

bmake[4]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules/archive/ar
bmake[4]: 1 error

bmake[4]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules/archive/ar
*** [all-recursive] Error code 1

bmake[3]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules/archive
bmake[3]: 1 error

bmake[3]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules/archive
*** [all-recursive] Error code 1

bmake[2]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules
bmake[2]: 1 error

bmake[2]: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3/modules
*** [all-recursive] Error code 1

bmake[1]: stopped making "all-recursive" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3
bmake[1]: 1 error

bmake[1]: stopped making "all-recursive" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3
*** [all] Error code 2

bmake: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3
bmake: 1 error

bmake: stopped making "all" in /Users/pbulk/build/archivers/libcomprex/work/libcomprex-0.3.3
*** Error code 2

Stop.
bmake[1]: stopped making "all" in /Volumes/data/jenkins/workspace/pkgsrc-macos-trunk-arm64/archivers/libcomprex
*** Error code 1

Stop.
bmake: stopped making "all" in /Volumes/data/jenkins/workspace/pkgsrc-macos-trunk-arm64/archivers/libcomprex