The prototype was updated a few days ago.
Unfortunately, I still fail to compile with autotools. Shortened output of `make -j 6`:
Code: Select all
[...]
In file included from flowfield.cpp:6:
flowfield.private.h:218:35: error: extra qualification ‘flowfield::detail::AbstractAStar::’ on member ‘reconstructPath’ [-fpermissive]
const std::deque<unsigned int> AbstractAStar::reconstructPath(unsigned int start);
^~~~~~~~~~~~~
flowfield.private.h: In member function ‘void flowfield::detail::FuturedTask<T>::run()’:
flowfield.private.h:266:6: error: ‘QElapsedTimer’ was not declared in this scope
QElapsedTimer timer;
^~~~~~~~~~~~~
flowfield.private.h:266:6: note: suggested alternative: ‘QDateTime’
QElapsedTimer timer;
^~~~~~~~~~~~~
QDateTime
flowfield.private.h:267:6: error: ‘timer’ was not declared in this scope
timer.start();
^~~~~
flowfield.private.h:267:6: note: suggested alternative: ‘time’
timer.start();
^~~~~
time
flowfield.private.h:273:40: error: ‘logMutex’ was not declared in this scope
std::lock_guard<std::mutex> lock(logMutex);
^~~~~~~~
flowfield.private.h:280:40: error: ‘logMutex’ was not declared in this scope
std::lock_guard<std::mutex> lock(logMutex);
^~~~~~~~
flowfield.private.h: In member function ‘void flowfield::detail::FlowFieldSector::VectorT::normalize()’:
flowfield.private.h:331:32: error: ‘sqrt’ is not a member of ‘std’
const float length = std::sqrt(std::pow(x, 2) + std::pow(y, 2));
^~~~
flowfield.private.h:331:32: note: suggested alternative: ‘sort’
const float length = std::sqrt(std::pow(x, 2) + std::pow(y, 2));
^~~~
sort
flowfield.private.h:331:42: error: ‘pow’ is not a member of ‘std’
const float length = std::sqrt(std::pow(x, 2) + std::pow(y, 2));
^~~
flowfield.private.h:331:59: error: ‘pow’ is not a member of ‘std’
const float length = std::sqrt(std::pow(x, 2) + std::pow(y, 2));
^~~
flowfield.private.h: At global scope:
flowfield.private.h:388:4: error: type qualifiers ignored on function return type [-Werror=ignored-qualifiers]
const unsigned short getCostOrElse(const short x, const short y, const unsigned short elseCost);
^~~~~
flowfield.private.h:420:3: error: type qualifiers ignored on function return type [-Werror=ignored-qualifiers]
const unsigned int straightLineDistance(const Point source, const Point destination);
^~~~~
[...]
flowfield.cpp: In function ‘void flowfield::calculateFlowFieldsAsync(MOVE_CONTROL*, unsigned int, int, int, int, int, PROPULSION_TYPE, DROID_TYPE, FPATH_MOVETYPE, int, bool, const StructureBounds&)’:
flowfield.cpp:72:117: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
detail::Point source { static_cast<unsigned int>(map_coord(startX)), static_cast<unsigned int>(map_coord(startY)) };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:73:107: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
detail::Point goal { static_cast<unsigned int>(map_coord(tX)), static_cast<unsigned int>(map_coord(tY)) };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:75:20: error: ‘make_unique’ is not a member of ‘std’
auto task = std::make_unique<detail::PathRequestTask>(source, goal, propulsionType);
^~~~~~~~~~~
flowfield.cpp:75:20: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:25:1:
+#include <memory>
flowfield.cpp:75:20:
auto task = std::make_unique<detail::PathRequestTask>(source, goal, propulsionType);
^~~~~~~~~~~
flowfield.cpp:75:55: error: expected primary-expression before ‘>’ token
auto task = std::make_unique<detail::PathRequestTask>(source, goal, propulsionType);
^
flowfield.cpp:75:65: error: left operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<detail::PathRequestTask>(source, goal, propulsionType);
^~~~
flowfield.cpp:75:71: error: right operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<detail::PathRequestTask>(source, goal, propulsionType);
^~~~~~~~~~~~~~
flowfield.cpp: In function ‘std::deque<unsigned int> flowfield::getPathFromCache(unsigned int, unsigned int, unsigned int, unsigned int, PROPULSION_TYPE)’:
flowfield.cpp:81:117: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
detail::Point source { static_cast<unsigned int>(map_coord(startX)), static_cast<unsigned int>(map_coord(startY)) };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:82:107: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
detail::Point goal { static_cast<unsigned int>(map_coord(tX)), static_cast<unsigned int>(map_coord(tY)) };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp: In function ‘const std::pair<float, float> flowfield::getMovementVector(unsigned int, unsigned int, unsigned int, PROPULSION_TYPE)’:
flowfield.cpp:92:84: error: could not convert ‘{currentX, currentY}’ from ‘<brace-enclosed initializer list>’ to ‘flowfield::detail::Point’
return detail::getMovementVector(nextPortalId, { currentX, currentY }, propulsion);
^
flowfield.cpp: At global scope:
flowfield.cpp:169:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:169:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:169:37: error: expected primary-expression before ‘>’ token
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^
flowfield.cpp:170:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:170:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:170:37: error: expected primary-expression before ‘>’ token
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^
flowfield.cpp:171:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:171:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:171:37: error: expected primary-expression before ‘>’ token
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX),
^
flowfield.cpp:172:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX)
^~~~~~~~~~~
flowfield.cpp:172:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:172:37: error: expected primary-expression before ‘>’ token
std::make_unique<portalPathCacheT>(PORTAL_PATH_CACHE_MAX)
^
flowfield.cpp:176:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:176:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:176:36: error: expected primary-expression before ‘>’ token
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^
flowfield.cpp:177:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:177:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:177:36: error: expected primary-expression before ‘>’ token
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^
flowfield.cpp:178:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^~~~~~~~~~~
flowfield.cpp:178:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:178:36: error: expected primary-expression before ‘>’ token
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX),
^
flowfield.cpp:179:9: error: ‘make_unique’ is not a member of ‘std’
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX)
^~~~~~~~~~~
flowfield.cpp:179:9: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:179:36: error: expected primary-expression before ‘>’ token
std::make_unique<flowfieldCacheT>(FLOWFIELD_CACHE_MAX)
^
flowfield.cpp: In static member function ‘static flowfield::detail::Point flowfield::detail::AbstractSector::getTopLeftCorner(unsigned int)’:
flowfield.cpp:249:21: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
return Point{x, y};
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp: In member function ‘const std::deque<unsigned int> flowfield::detail::PathRequestTask::portalWalker(unsigned int, unsigned int)’:
flowfield.cpp:582:121: error: type qualifiers ignored on cast result type [-Werror=ignored-qualifiers]
std::deque<unsigned int> path = portalWalker.findPath(sourcePortalId, static_cast<const unsigned int>(portals.size()));
^
flowfield.cpp:585:26: error: ‘make_unique’ is not a member of ‘std’
auto pathCopy = std::make_unique<std::deque<unsigned int>>(path);
^~~~~~~~~~~
flowfield.cpp:585:26: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:585:61: error: expected primary-expression before ‘>’ token
auto pathCopy = std::make_unique<std::deque<unsigned int>>(path);
^~
flowfield.cpp: In member function ‘std::vector<std::future<bool> > flowfield::detail::PathRequestTask::scheduleFlowFields(std::deque<unsigned int>&)’:
flowfield.cpp:610:23: error: ‘make_unique’ is not a member of ‘std’
auto task = std::make_unique<FlowfieldCalcTask>(goals, portals, sectors, propulsion);
^~~~~~~~~~~
flowfield.cpp:610:23: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:610:52: error: expected primary-expression before ‘>’ token
auto task = std::make_unique<FlowfieldCalcTask>(goals, portals, sectors, propulsion);
^
flowfield.cpp:610:61: error: left operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<FlowfieldCalcTask>(goals, portals, sectors, propulsion);
^~~~~~~
flowfield.cpp:610:61: error: right operand of comma operator has no effect [-Werror=unused-value]
flowfield.cpp:610:70: error: right operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<FlowfieldCalcTask>(goals, portals, sectors, propulsion);
^~~~~~~
flowfield.cpp:625:22: error: ‘make_unique’ is not a member of ‘std’
auto task = std::make_unique<FlowfieldCalcTask>(finalGoals, portals, sectors, propulsion);
^~~~~~~~~~~
flowfield.cpp:625:22: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:625:51: error: expected primary-expression before ‘>’ token
auto task = std::make_unique<FlowfieldCalcTask>(finalGoals, portals, sectors, propulsion);
^
flowfield.cpp:625:65: error: left operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<FlowfieldCalcTask>(finalGoals, portals, sectors, propulsion);
^~~~~~~
flowfield.cpp:625:65: error: right operand of comma operator has no effect [-Werror=unused-value]
flowfield.cpp:625:74: error: right operand of comma operator has no effect [-Werror=unused-value]
auto task = std::make_unique<FlowfieldCalcTask>(finalGoals, portals, sectors, propulsion);
^~~~~~~
flowfield.cpp: In member function ‘virtual void flowfield::detail::FlowfieldCalcTask::runPromised()’:
flowfield.cpp:668:32: error: ‘make_unique’ is not a member of ‘std’
auto flowfieldMoved = std::make_unique<FlowFieldSector>(std::move(flowField));
^~~~~~~~~~~
flowfield.cpp:668:32: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:668:59: error: expected primary-expression before ‘>’ token
auto flowfieldMoved = std::make_unique<FlowFieldSector>(std::move(flowField));
^
flowfield.cpp: In member function ‘void flowfield::detail::FlowfieldCalcTask::calculateIntegrationField(const pointsT&)’:
flowfield.cpp:680:57: error: no matching function for call to ‘flowfield::detail::Tile::Tile(<brace-enclosed initializer list>)’
integrationField.setTile(x, y, Tile { NOT_PASSABLE });
^
In file included from flowfield.cpp:6:
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile()’
struct Tile {
^~~~
flowfield.private.h:66:10: note: candidate expects 0 arguments, 1 provided
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(const flowfield::detail::Tile&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘const short unsigned int’ to ‘const flowfield::detail::Tile&’
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(flowfield::detail::Tile&&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘const short unsigned int’ to ‘flowfield::detail::Tile&&’
flowfield.cpp: In member function ‘void flowfield::detail::FlowfieldCalcTask::integratePoints(std::priority_queue<flowfield::detail::FlowfieldCalcTask::Node>&)’:
flowfield.cpp:718:71: error: no matching function for call to ‘flowfield::detail::Tile::Tile(<brace-enclosed initializer list>)’
integrationField.setTile(nodePoint.x, nodePoint.y, Tile { newCost });
^
In file included from flowfield.cpp:6:
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile()’
struct Tile {
^~~~
flowfield.private.h:66:10: note: candidate expects 0 arguments, 1 provided
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(const flowfield::detail::Tile&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘const short unsigned int’ to ‘const flowfield::detail::Tile&’
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(flowfield::detail::Tile&&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘const short unsigned int’ to ‘flowfield::detail::Tile&&’
flowfield.cpp: In member function ‘void flowfield::detail::FlowfieldCalcTask::calculateFlowField()’:
flowfield.cpp:727:23: error: unused variable ‘thisSectorId’ [-Werror=unused-variable]
const unsigned int thisSectorId = AbstractSector::getIdByCoords(goals[0].x, goals[0].y);
^~~~~~~~~~~~
flowfield.cpp: At global scope:
flowfield.cpp:764:3: error: type qualifiers ignored on function return type [-Werror=ignored-qualifiers]
const unsigned short FlowfieldCalcTask::getCostOrElse(const short x, const short y, const unsigned short elseCost) {
^~~~~
flowfield.cpp: In function ‘void flowfield::detail::initCostFields()’:
flowfield.cpp:792:29: error: ‘make_unique’ is not a member of ‘std’
sectors.push_back(std::make_unique<Sector>());
^~~~~~~~~~~
flowfield.cpp:792:29: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:792:47: error: expected primary-expression before ‘>’ token
sectors.push_back(std::make_unique<Sector>());
^
flowfield.cpp:792:49: error: expected primary-expression before ‘)’ token
sectors.push_back(std::make_unique<Sector>());
^
flowfield.cpp: In function ‘void flowfield::detail::costFieldReplaceWithEmpty(flowfield::detail::sectorListT&)’:
flowfield.cpp:825:20: error: ‘make_unique’ is not a member of ‘std’
sector = std::make_unique<EmptySector>();
^~~~~~~~~~~
flowfield.cpp:825:20: note: ‘std::make_unique’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?
flowfield.cpp:825:43: error: expected primary-expression before ‘>’ token
sector = std::make_unique<EmptySector>();
^
flowfield.cpp:825:45: error: expected primary-expression before ‘)’ token
sector = std::make_unique<EmptySector>();
^
flowfield.cpp: In function ‘flowfield::detail::Tile flowfield::detail::createTile(unsigned int, unsigned int, PROPULSION_TYPE)’:
flowfield.cpp:955:20: error: no matching function for call to ‘flowfield::detail::Tile::Tile(<brace-enclosed initializer list>)’
return Tile{cost};
^
In file included from flowfield.cpp:6:
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile()’
struct Tile {
^~~~
flowfield.private.h:66:10: note: candidate expects 0 arguments, 1 provided
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(const flowfield::detail::Tile&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘short unsigned int’ to ‘const flowfield::detail::Tile&’
flowfield.private.h:66:10: note: candidate: ‘constexpr flowfield::detail::Tile::Tile(flowfield::detail::Tile&&)’
flowfield.private.h:66:10: note: no known conversion for argument 1 from ‘short unsigned int’ to ‘flowfield::detail::Tile&&’
flowfield.cpp: In function ‘flowfield::detail::Portal flowfield::detail::detectPortalByAxis(unsigned int, unsigned int, unsigned int, unsigned int, bool, flowfield::detail::AbstractSector&, flowfield::detail::AbstractSector&, unsigned int&)’:
flowfield.cpp:971:50: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
firstSectorPoint = Point { axis, otherAxis1 };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:972:51: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
secondSectorPoint = Point { axis, otherAxis2 };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:976:50: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
firstSectorPoint = Point { otherAxis1, axis };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp:977:51: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
secondSectorPoint = Point { otherAxis2, axis };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp: In function ‘flowfield::detail::Point flowfield::detail::getPointByFlatIndex(unsigned int)’:
flowfield.cpp:1036:24: error: no matching function for call to ‘flowfield::detail::Point::Point(<brace-enclosed initializer list>)’
return Point { x, y };
^
In file included from flowfield.cpp:6:
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point()’
struct Point {
^~~~~
flowfield.private.h:73:10: note: candidate expects 0 arguments, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(const flowfield::detail::Point&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.private.h:73:10: note: candidate: ‘constexpr flowfield::detail::Point::Point(flowfield::detail::Point&&)’
flowfield.private.h:73:10: note: candidate expects 1 argument, 2 provided
flowfield.cpp: At global scope:
flowfield.cpp:1070:3: error: type qualifiers ignored on function return type [-Werror=ignored-qualifiers]
const unsigned int straightLineDistance(const Point source, const Point destination) {
^~~~~
[...]
In file included from ../lib/framework/string_ext.h:24,
from ../lib/framework/frame.h:44,
from ../lib/framework/vector.h:31,
from basedef.h:29,
from droiddef.h:31,
from fpath.h:27,
from flowfield.h:8,
from flowfield.cpp:5:
flowfield.private.h: In instantiation of ‘void flowfield::detail::FuturedTask<T>::run() [with T = bool]’:
flowfield.private.h:264:9: required from here
flowfield.private.h:281:24: error: too many arguments for format [-Werror=format-extra-args]
debug(LOG_ERROR, "Exception in thread pool worker: ", ex.what());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../lib/framework/debug.h:264:93: note: in definition of macro ‘debug’
#define debug(part, ...) do { if (enabled_debug[part]) _debug(__LINE__, part, __FUNCTION__, __VA_ARGS__); } while(0)
^~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[3]: *** [Makefile:1059: flowfield.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/home/x/flowfield/warzone2100/src'
make[2]: *** [Makefile:853: all] Error 2
make[2]: Leaving directory '/home/x/flowfield/warzone2100/src'
make[1]: *** [Makefile:583: all-recursive] Error 1
make[1]: Leaving directory '/home/x/flowfield/warzone2100'
make: *** [Makefile:503: all] Error 2
, but for reasons unrelated to the prototype.
Output of `cmake -H. -Bbuild -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX:PATH=~/flowfield -GNinja`: