Skip to content
This repository was archived by the owner on Feb 26, 2025. It is now read-only.

Avoid templated friend classes. #688

Merged
merged 1 commit into from
Feb 25, 2023
Merged

Conversation

1uc
Copy link
Collaborator

@1uc 1uc commented Feb 15, 2023

There seems to be a compiler bug in numerous version of GCC which
prevent code such as:

class Foo {
  template<class Derived>
  friend class SomeCRTP<Derived>;
};

This commit removed all such constructs from HighFive, by allowing a
function detail::make_* to create Object, Selection and Group
from an hid_t.

@1uc 1uc requested a review from alkino February 15, 2023 14:58
@1uc 1uc force-pushed the 1uc/avoid-template-friend-classes branch from b6b15d9 to 38dce1c Compare February 15, 2023 15:33
There seems to be a compiler bug in numerous version of GCC which
prevent code such as:

    class Foo {
      template<class Derived>
      friend class SomeCRTP<Derived>;
    };

This commit removed all such constructs from HighFive, by allowing a
function `detail::make_*` to create `Object`, `Selection` and `Group`
from an `hid_t`.
@1uc 1uc force-pushed the 1uc/avoid-template-friend-classes branch from 38dce1c to 3a376eb Compare February 15, 2023 15:48
@1uc 1uc merged commit 20be06f into master Feb 25, 2023
@1uc 1uc deleted the 1uc/avoid-template-friend-classes branch February 25, 2023 08:50
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants