Bug 52372 - Заголовочный файл ссылается на неопределённые символы
Summary: Заголовочный файл ссылается на неопределённые символы
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: libreiserfsprogs (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: led
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-12-08 05:35 MSK by Leonid Krivoshein
Modified: 2024-12-08 05:50 MSK (History)
2 users (show)

See Also:


Attachments
remove inline declarations from common header (2.99 KB, patch)
2024-12-08 05:35 MSK, Leonid Krivoshein
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Leonid Krivoshein 2024-12-08 05:35:13 MSK
Created attachment 17354 [details]
remove inline declarations from common header

Несколько символов в /usr/include/reiserfs/tools.h объявлены как extern inline, они определены в tools.c в самой библиотеке. Соответственно, при сборке ПО с данной библиотекой не определены. Там, где они используются, будет ошибка, а где не используются, такие предупреждения:

In file included from /usr/include/reiserfs/object.h:25,
                 from /usr/include/reiserfs/tree.h:27,
                 from /usr/include/reiserfs/reiserfs.h:39,
                 from reiserfsclone.c:26:
/usr/include/reiserfs/tools.h:35:19: warning: inline function 'reiserfs_tools_find_next_zero_bit' declared but never defined
   35 | extern inline int reiserfs_tools_find_next_zero_bit (const void *vaddr,
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/reiserfs/tools.h:32:19: warning: inline function 'reiserfs_tools_find_first_zero_bit' declared but never defined
   32 | extern inline int reiserfs_tools_find_first_zero_bit (const void *vaddr,
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/reiserfs/tools.h:30:19: warning: inline function 'reiserfs_tools_test_bit' declared but never defined
   30 | extern inline int reiserfs_tools_test_bit(int nr, const void *addr);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/reiserfs/tools.h:29:19: warning: inline function 'reiserfs_tools_clear_bit' declared but never defined
   29 | extern inline int reiserfs_tools_clear_bit (int nr, void *addr);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/reiserfs/tools.h:28:19: warning: inline function 'reiserfs_tools_set_bit' declared but never defined
   28 | extern inline int reiserfs_tools_set_bit (int nr, void *addr);
      |                   ^~~~~~~~~~~~~~~~~~~~~~

Предлагаю патч для исправления. Следом соберу тестовый таск.
Comment 1 Leonid Krivoshein 2024-12-08 05:50:22 MSK
Собрал таск #364406. При сборке с ним partclone указанные предупреждения уходят. Если не будет возражений, могу закоммитить.