Skip to content

Commit

Permalink
Resolved issues for Clang
Browse files Browse the repository at this point in the history
Minimum Clang Version: 17 (Support for Class Template Argument Deduction for Aggregates)
  • Loading branch information
refvalue committed Nov 14, 2024
1 parent 5777fe0 commit a9efac4
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 4 deletions.
1 change: 1 addition & 0 deletions include/essence/io/cmrc_fs_operator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "spanstream.hpp"

#include <concepts>
#include <istream>
#include <memory>
#include <span>
#include <string>
Expand Down
6 changes: 3 additions & 3 deletions include/essence/io/spanstream.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ namespace essence::io {
template <typename CharT, typename Traits = std::char_traits<CharT>>
struct basic_ispanstream : basic_spanstream_impl<std::basic_istream<CharT, Traits>, std::ios_base::in> {
using base_type = basic_spanstream_impl<std::basic_istream<CharT, Traits>, std::ios_base::in>;
using base_type::basic_spanstream_impl;
using base_type::base_type;

template <std::ranges::borrowed_range Range>
requires(
Expand All @@ -73,7 +73,7 @@ namespace essence::io {
template <typename CharT, typename Traits = std::char_traits<CharT>>
struct basic_ospanstream : basic_spanstream_impl<std::basic_ostream<CharT, Traits>, std::ios_base::out> {
using base_type = basic_spanstream_impl<std::basic_ostream<CharT, Traits>, std::ios_base::out>;
using base_type::basic_spanstream_impl;
using base_type::base_type;

[[nodiscard]] std::span<typename base_type::char_type> span() const noexcept {
return this->spanbuf_.span();
Expand All @@ -85,7 +85,7 @@ namespace essence::io {
: basic_spanstream_impl<std::basic_iostream<CharT, Traits>, std::ios_base::in | std::ios_base::out> {
using base_type =
basic_spanstream_impl<std::basic_iostream<CharT, Traits>, std::ios_base::in | std::ios_base::out>;
using base_type::basic_spanstream_impl;
using base_type::base_type;

[[nodiscard]] std::span<typename base_type::char_type> span() const noexcept {
return this->spanbuf_.span();
Expand Down
2 changes: 1 addition & 1 deletion include/essence/meta/detail/fake_object_wrapper.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ namespace essence::meta::detail {

template <typename T>
consteval auto make_fake_object_wrapper(const T& obj) noexcept {
return fake_object_wrapper{obj};
return fake_object_wrapper{obj}.value;
}

#ifdef _MSC_VER
Expand Down

0 comments on commit a9efac4

Please sign in to comment.