GNOME Bugzilla – Bug 672762
Wrong callgraph is generated on function pointer assignments
Last modified: 2018-07-30 10:19:13 UTC
Created attachment 210524 [details] Doxyfile I saw this bug on Linux and Windows platforms, both in 1.8.0 version. When a variable is a pointer on function and you assign it to a function, Doxygen see a call to this function. See the attached Doxyfile and following C code. I tried to disable the parsing of these assignments with #ifndef and @cond but it doesn't work (at least on Linux) For me we should see only the main to func3 call. /** @file */ /** @brief Show callgraph bug on function assignment */ typedef void functype(int); typedef struct { functype (*m_f1); functype (*m_f2); } s_ess; s_ess my; void func1(int a) { } void func2(int b) { } void func3(int b) { /** @note of course static analyze cannot guess the called functions */ my.m_f1(1); my.m_f2(2); } int main() { /** @note my.m_f1 assignment should be ignored */ #ifndef DOXYGEN my.m_f1 = func1; #endif /** @note my.m_f2 assignment should be ignored */ /** @cond */ my.m_f2 = func2; /** @endcond */ /** @note should be the only one in the callgraph */ func3(3); return 0; }
Seems relative to 618509 and 441228
As discussed in https://github.com/doxygen/doxygen/pull/734 , Doxygen has moved its issue tracking to https://github.com/doxygen/doxygen/issues All Doxygen tickets in GNOME Bugzilla have been migrated to Github. You can subscribe and participate in the new ticket in Github. You can find the corresponding Github ticket by searching for its Bugzilla ID (number) in Github. Hence I am closing this GNOME Bugzilla ticket. Please use the corresponding ticket in Github instead. Thanks a lot!