oop - C++ HLS Synthesis Warnings -
when try sythnise using vivado hls, errors same line:
critical warning: [synchk 200-43] pcd_triangulation/pcd_triangulation.cpp:156: use or assignment of non-static pointer 'current.0.i.reg2mem' (this pointer may refer different memory locations).
critical warning: [synchk 200-11] pcd_triangulation/pcd_triangulation.cpp:156: constant 'start' has unsynthesizable type 'lass.triangle.2.28.31 = type { [3 x �lass.triangle.2.28.3...' (possible cause(s): pointer pointer or global pointer).
critical warning: [synchk 200-11] pcd_triangulation/pcd_triangulation.cpp:156: constant 'start' has unsynthesizable type '^lass.triangle.2.28.31 = type { [3 x �lass.triangle.2.28.3...' (possible cause(s): structure variable cannot decomposed due (1) unsupported type conversion; (2) memory copy operation; (3) function pointer used in struct; (4) unsupported pointer comparison).
critical warning: [synchk 200-42] pcd_triangulation/pcd_triangulation.cpp:156: pointer comparison not supported.
the code in c++. code gives warnings above:
if(start->child[0]==null && start->child[1]==null && start->child[2]==null)
start
global pointer class (triangle *start
) , child[i]
array points same class inside class (member)(triangle *child[3]
).
class triangle { public: triangle *child[3]; ... } triangle *start; inline triangle *mylocate(int p) { if (start->child[0] == null && start->child[1] == null && start->child[2] == null) { return start; ... } }
can me solve these issues?
i don't know vivado, claims "pointer comparison not supported". you're comparing pointers.
so it's not supported. can't pointers comparison :/
Comments
Post a Comment