[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