John Marshall pointed out that darwin-nat.c fails to build:
    CXX    darwin-nat.o
    ../../../binutils-gdb/gdb/darwin-nat.c:1709:8: error: must use 'class' tag to refer to type 'thread_info' in this scope
    for (thread_info *it : all_threads ())
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/mach/thread_act.h:240:15: note:
    class 'thread_info' is hidden by a non-type declaration of 'thread_info' here
    kern_return_t thread_info
    Mach has a thread_info() function declared in that header, which darwin-nat.c #includes.
This patch fixes the problem by reintroducing the struct keyword.
gdb/ChangeLog
2019-05-16  Tom Tromey  <tromey@adacore.com>
	* darwin-nat.c (thread_info_from_private_thread_info): Add struct
	keyword to foreach.
+2019-05-16  Tom Tromey  <tromey@adacore.com>
+
+       * darwin-nat.c (thread_info_from_private_thread_info): Add struct
+       keyword to foreach.
+
 2019-05-15  Simon Marchi  <simon.marchi@efficios.com>
 
        * linux-thread-db.c (try_thread_db_load_1): Change return type
 
 static struct thread_info *
 thread_info_from_private_thread_info (darwin_thread_info *pti)
 {
-  for (thread_info *it : all_threads ())
+  for (struct thread_info *it : all_threads ())
     {
       darwin_thread_info *iter_pti = get_darwin_thread_info (it);