Project

General

Profile

Bug #101250

Build error with gcc 15

Added by Xavier Bachelot 2 months ago. Updated about 1 month ago.

Status:
Résolu (à déployer)
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
24 January 2025
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

What will become Fedora 42 has switched to a pre-release of gcc 15, which is expected to be released soon-ish.
https://fedoraproject.org/wiki/Changes/GNUToolchainF42
https://gcc.gnu.org/gcc-15/changes.html

Latest lasso fails to build with the following errors:
"""
In file included from defederation.c:37:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from defederation.h:31,
from defederation.c:35:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: defederation.lo] Error 1

In file included from name_identifier_mapping.c:35:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from name_identifier_mapping.h:31,
from name_identifier_mapping.c:32:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: name_identifier_mapping.lo] Error 1

In file included from name_registration.c:33:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from name_registration.h:31,
from name_registration.c:31:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: name_registration.lo] Error 1

In file included from server.c:38:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from server.c:37:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: server.lo] Error 1

In file included from logout.c:241:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from logout.h:31,
from logout.c:237:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: ** [Makefile:589: logout.lo] Error 1
In file included from profile.c:41:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider *)' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from profile.c:39:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: profile.lo] Error 1

In file included from provider.c:62:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from provider.c:61:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
provider.c:1581:1: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider *)' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
1581 | lasso_provider_get_key_encryption_method(const LassoProvider *provider) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: provider.lo] Error 1

In file included from login.c:265:
providerprivate.h:95:26: error: conflicting types for 'lasso_provider_get_key_encryption_method'; have 'LassoKeyEncryptionMethod(const LassoProvider )' {aka 'LassoKeyEncryptionMethod(const struct _LassoProvider *)'}
95 | LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(const LassoProvider
provider); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from server.h:31,
from profile.h:33,
from login.h:38,
from login.c:249:
provider.h:289:39: note: previous declaration of 'lasso_provider_get_key_encryption_method' with type 'LassoKeyEncryptionMethod(void)'
289 | LASSO_EXPORT LassoKeyEncryptionMethod lasso_provider_get_key_encryption_method(); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make4: *** [Makefile:589: login.lo] Error 1
"""

Associated revisions

Revision ef24e43f (diff)
Added by Yann Weber about 2 months ago

bindings: fix lasso_provider_get_key_encryption_method export (#101250)

Revision a58a5350 (diff)
Added by Yann Weber about 2 months ago

registry: fix lasso_registry_destroy private declaration (#101250)

History

#1

Updated by Robot Gitea about 2 months ago

  • Status changed from Nouveau to En cours
  • Assignee set to Yann Weber

Yann Weber (yweber) a ouvert une pull request sur Gitea concernant cette demande :

#2

Updated by Robot Gitea about 2 months ago

  • Status changed from En cours to Solution proposée
#3

Updated by Xavier Bachelot about 2 months ago

Works for me, thanks !

#4

Updated by Robot Gitea about 1 month ago

  • Status changed from Solution proposée to Solution validée

Frédéric Péters (fpeters) a approuvé une pull request sur Gitea concernant cette demande :

#5

Updated by Frédéric Péters about 1 month ago

For information, it has now been raised in debian, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1097149

#6

Updated by Robot Gitea about 1 month ago

  • Status changed from Solution validée to Résolu (à déployer)

Yann Weber (yweber) a mergé une pull request sur Gitea concernant cette demande :

Also available in: Atom PDF