← Back to team overview

kicad-developers team mailing list archive

Re: OSX - Issue with the last Compiler Update (again) 11/April/2014

 

Hi Marco,

I am currently away from CERN, so I do not have any access to OS X at the moment. Usually, when I hear about errors related to Mac, I build KiCad with clang under Linux, but this time it is not enough (everything compiles fine on my machine). I see that you have already changed the conflicting define. Does it solve the problem? If so, I would suggest one more minor modification (in the attachment).

Regards,
Orson

On 04/27/2014 03:09 PM, Marco Serantoni wrote:
Maciej,
After the last update of the compiler on OSX done the 11/ April i’ve a
conflict in the headers.
How we can circumvent this issue and let the code compile ?
Under is the point, in attachment there is an rtf file with the complete
error, do you have suggestions ?


In file included from
/Users/marco/Development/product/boost_root/include/boost/polygon/polygon.hpp:65:
/Users/marco/Development/product/boost_root/include/boost/polygon/polygon_90_set_traits.hpp:187:86:
warning: template argument uses unnamed
       type [-Wunnamed-type-template-args]
     typedef typename gtl_same_type<polygon_90_set_concept, typename
geometry_concept<T>::type>::type type;

               ^
/Users/marco/Development/product/boost_root/include/boost/polygon/detail/polygon_90_set_view.hpp:466:30:
note: in instantiation of template
       class 'boost::polygon::is_mutable_polygon_90_set_type<<anonymous
enum at

/System/Library/Frameworks/Security.framework/Headers/cssmtype.h:84:1>
 >' requested here
     typename gtl_if<typename
is_mutable_polygon_90_set_type<geometry_type_1>::type>::type,
                              ^
/Users/marco/Development/product/boost_root/include/boost/polygon/detail/polygon_90_set_view.hpp:469:3:
note: while substituting deduced
       template arguments into function template 'operator+' [with
geometry_type_1 = <anonymous enum at

/System/Library/Frameworks/Security.framework/Headers/cssmtype.h:84:1>,
coordinate_type_1 = int]
   operator+(const geometry_type_1& lvalue, coordinate_type_1 rvalue) {
   ^
/System/Library/Frameworks/Security.framework/Headers/cssmtype.h:84:1:
note: unnamed type used in template argument was declared here
enum {
^
/System/Library/Frameworks/Security.framework/Headers/cssmtype.h:714:12:
error: non-friend class member 'min' cannot have a qualified name
     uint32 Min; /* inclusive minimum value */
            ^~~
/Users/marco/Development/product/include/geometry/rtree.h:35:20: note:
expanded from macro 'Min'
   #define Min std::min
               ~~~~~^

=== modified file 'include/geometry/rtree.h'
--- /tmp/bzr-diff-V5rp1n/old/include/geometry/rtree.h	2014-04-27 16:28:37.973999000 +0200
+++ /home/orson/workspace/kicad-master/include/geometry/rtree.h	2014-04-28 21:42:05.993506027 +0200
@@ -31,12 +31,12 @@
 #include <stdlib.h>
 
 #define ASSERT assert    // RTree uses ASSERT( condition )
-#ifndef Min
+#ifndef rMin
   #define rMin std::min
-#endif    // Min
-#ifndef Max
+#endif    // rMin
+#ifndef rMax
   #define rMax std::max
-#endif    // Max
+#endif    // rMax
 
 //
 // RTree.h

Follow ups

References