Sergei Trofimovich
c2c352c6dd
AI/Nullkiller/Goals/ExecuteHeroChain.cpp: catch polymorphic exceptions by reference
...
The suspicious code was detected by `gcc-13` as:
AI/Nullkiller/Goals/ExecuteHeroChain.cpp: In member function 'virtual void NKAI::Goals::ExecuteHeroChain::accept(NKAI::AIGateway*)':
AI/Nullkiller/Goals/ExecuteHeroChain.cpp:130:47: warning: catching polymorphic type 'class NKAI::cannotFulfillGoalException' by value [-Wcatch-value=]
130 | catch(cannotFulfillGoalException)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
AI/Nullkiller/Goals/ExecuteHeroChain.cpp:176:23: warning: catching polymorphic type 'class NKAI::goalFulfilledException' by value [-Wcatch-value=]
176 | catch(goalFulfilledException)
| ^~~~~~~~~~~~~~~~~~~~~~
Similar to object passing by value and reference passing polymorphic
exceptions by reference likely destroys them when copy-constructed to
a base class. Let's catch them by reference.
2022-12-17 21:50:57 +00:00
Andrii Danylchenko
eeea01d778
NKAI: namespace
2022-10-04 08:40:14 +03:00
DjWarmonger
5e2d87abd7
Update AI/Nullkiller/Goals/ExecuteHeroChain.cpp
...
Co-authored-by: Andrey Filipenkov <decapitator@ukr.net>
2022-09-14 16:23:13 +02:00
Tomasz Zieliński
931f4af2df
typo
2022-09-14 15:24:39 +02:00
Andrii Danylchenko
b4241670ba
Nullkiller: rename VCAI to AIGateway
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1fdf0de75d
Nullkiller: clusterization fixes, heroes clusterization for additional mains in case of locked heroes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
32fb465823
Nullkiller: stabilization+clasterization improvements+fuzzy fear
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1806dd8447
Nullkiller: remove AIhelper + refactoring
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
f832a8b3cd
Nullkiller: calibration and small behavior fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
8f8c5ca255
Nullkiller: initial decomposition
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
223a52b3d1
Nullkiller: Try to join behavior and goal and see what come out of it.
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
af0dcf97c4
Nullkiller: initial cleanup of unused code
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
5344df51c6
Nullkiller: capture guarded artifacts and other fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
9c14ccab8f
Nullkiller: fixes after first 5 autotesting maps
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
df78e3243b
Nullkiller: stabilisation, improve gather army
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b7b615ec70
Nullkiller: stabilisation fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
400967904b
Nullkiller AI: stabilization of build and prioritization fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
af9261d428
NullkillerAI: Added movement cost by hero role. New priority engine looks more or less stable.
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
eea5cb7f0b
Nullkiller AI: further stabilisation, implement staged hero chain (first with limit 0 turns then 1 turn)
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
6bebb766a6
Nullkiller AI: new prioritization engine stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b261734905
Nullkiller AI: new prioritization engine
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e6eb9ccc03
Nullkiller: dismising and hiring hero in order to defend town
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
84e5e6ac17
Nullkiller: rework defence a bit
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1096f2e9e6
Nullkiller: town portal fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
2798dcd6c5
Nullkiller: remove PRI* print macroses
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
ada76a5603
Nullkiller: fix file headers, move fuzzy config to ai folder
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e3c87fb58d
Nullkiller: stabilisation and fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
bcf8db3d05
Nullkiller: startup scripts
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
5fe2630c64
Nullkiller: rework prioritization, add hero roles, skills and other variables
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
01975e339b
Nullkiller: android build fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
286d084445
Nullkiller: better tracing and hero locking for hero chain
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
ffa626dc2f
AI: add ExecuteChain goal
2021-07-26 21:02:50 +03:00