These are chat archives for bluescarni/pagmo_reborn

8th
May 2016
Dario Izzo
@darioizzo
May 08 2016 16:11
/home/dario/Documents/PaGMOreborn/doc/sphinx/docs/population.rst:6: WARNING: Error in type declaration.
If typedef-like declaration:
  Type must be either just a name or a typedef-like declaration.
  If just a name:
    Error in declarator or parameters and qualifiers
    Invalid definition: Expected identifier in nested name, got keyword: using [error at 5]
      using pagmo::population::size_type =  std::vector::size_type
      -----^
  If typedef-like declaration:
    Invalid definition: Expected identifier in nested name, got keyword: using [error at 5]
      using pagmo::population::size_type =  std::vector::size_type
      -----^
If type alias or template alias:
  Invalid definition: Expected identifier in nested name, got keyword: using [error at 5]
    using pagmo::population::size_type =  std::vector::size_type
    -----^
Any idea why doxygen complains here?
Francesco Biscani
@bluescarni
May 08 2016 16:13
it's not doxygen, it's breathe I think
I believe it does not understand using vs typedef
Dario Izzo
@darioizzo
May 08 2016 16:13
anything we can do about it?
right ok, so we ignore
Francesco Biscani
@bluescarni
May 08 2016 16:14
what I did in piranha was to wrap those declaration into an #if defined in the source code, so that when I am compiling it uses the using, when I am invoking doxygen it uses the typedef
Dario Izzo
@darioizzo
May 08 2016 16:14
should we put these work arounds in the code though?
Francesco Biscani
@bluescarni
May 08 2016 16:14
I am looking these days into doxygen's libclang support which supposedly makes the parsing more robust, maybe this solves the issue as well
it would be something like this:
#if defined(DOXYGEN_INVOKED)
typedef a b;
#else
using b = a;
#endif
so the existing code is not modified, you just add extra gook to make doxygen/breathe happier
if it's not too many I'd say to do it... we can also revert to using typedef, for those simple uses that we are doing now they are equivalent
Dario Izzo
@darioizzo
May 08 2016 16:16
My question is whether we want to start fixing upstream issues using these tricks .... we run the risk of filling up the code with them. We could also just let this go as its only a warning ...
Francesco Biscani
@bluescarni
May 08 2016 16:17
but the documentation looks shitty if we don't fix this
Dario Izzo
@darioizzo
May 08 2016 16:17
ok then ....
is DOXYGEN_INVOKED definied automatically by doxygen?
Or we have to?
Francesco Biscani
@bluescarni
May 08 2016 16:17
Public Types
typedef using pagmo::population::size_type = std::vector::size_type
you have to put it into doxyfile
just spent the afternoon compiling boost on the Windows 10 virtual machine for both MinGW and MSVC
Dario Izzo
@darioizzo
May 08 2016 16:22
nice ....
any joy? or just pain?
Francesco Biscani
@bluescarni
May 08 2016 16:22
the usual amount of boolshit surrounding boost, python, 64 bit, bjam, etc.
they changed some more things in Python3.5 regarding installation paths and stuff
but at this point I have 2 full boost builds with MinGW and MSVC, both including boost python as well
(need it for piranha)
Dario Izzo
@darioizzo
May 08 2016 16:23
boost python 3 and 2 ?
Francesco Biscani
@bluescarni
May 08 2016 16:23
so progress
no just 3
can't be bothered with 2 for the moment
and we will probably require 3 for pagmo anyway
Dario Izzo
@darioizzo
May 08 2016 16:24
where did you get the vm image?
Francesco Biscani
@bluescarni
May 08 2016 16:24
pirate bay
Dario Izzo
@darioizzo
May 08 2016 16:24
yeah!
Francesco Biscani
@bluescarni
May 08 2016 16:25
arrrr
Dario Izzo
@darioizzo
May 08 2016 16:26
?
Dario Izzo
@darioizzo
May 08 2016 16:27
:)
Francesco Biscani
@bluescarni
May 08 2016 16:27
anyway you were right so far, windows 10 is bearable for the moment
but I always felt that at the beginning with windows, then it gets on my nerves because of some inane bullshit and I ragequit :)
let's see what happens this time