[mlpack-svn] [MLPACK] #347: #warning or #error when <armadillo> is included before <mlpack/core.hpp>

MLPACK Trac trac at coffeetalk-1.cc.gatech.edu
Mon Apr 21 13:38:04 EDT 2014


#347: #warning or #error when <armadillo> is included before <mlpack/core.hpp>
---------------------+------------------------------------------------------
 Reporter:  rcurtin  |        Owner:                                   
     Type:  defect   |       Status:  new                              
 Priority:  major    |    Milestone:  mlpack 1.0.9                     
Component:  mlpack   |     Keywords:  preprocessor, armadillo, core.hpp
 Blocking:           |   Blocked By:                                   
---------------------+------------------------------------------------------
 This is mainly a note to self so I don't forget to do this.  When
 <armadillo> is included before <mlpack/core.hpp>, all kinds of weirdness
 can happen because mlpack tries to use a bunch of (semi-)hidden Armadillo
 functionality to add more functionality to Armadillo.  We could use
 preprocessor macros to catch when this situation happens and either issue
 an error to the user, or a warning.  I'd prefer a warning, because it
 won't always cause weird things to happen and the user may not always be
 in a place where they can modify the order of includes to fix the problem.

 In addition, it may be worth it to ensure that mlpack still compiles fine
 when this situation is true, by defining a few more macros and (for
 instance) using cov() instead of ccov() when ccov() can't be included.

-- 
Ticket URL: <http://trac.research.cc.gatech.edu/fastlab/ticket/347>
MLPACK <www.fast-lab.org>
MLPACK is an intuitive, fast, and scalable C++ machine learning library developed at Georgia Tech.


More information about the mlpack-svn mailing list