Skip to content

Commit

Permalink
Leave the RHS of a GrammarSymbolSet move default initialized
Browse files Browse the repository at this point in the history
Previously the RHS was left as it was when, technically, it should be
restored to its default initialized state.  This fix exchanges the
RHS GrammarSymbolSet values with their default initialized values to
correct that error.
  • Loading branch information
Charles Baker authored and cwbaker committed Jul 15, 2024
1 parent 4e000f9 commit 5e01cd3
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/lalr/GrammarSymbolSet.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,23 +20,23 @@ static const size_t BITS_PER_ELEMENT = sizeof(size_t) * 8;

GrammarSymbolSet::GrammarSymbolSet( size_t symbols )
: set_()
, minimum_(numeric_limits<size_t>::max())
, maximum_(numeric_limits<size_t>::min())
, minimum_( numeric_limits<size_t>::max() )
, maximum_( numeric_limits<size_t>::min() )
{
set_.resize( symbols / BITS_PER_ELEMENT );
}

GrammarSymbolSet::GrammarSymbolSet( GrammarSymbolSet&& set )
: set_( std::move(set.set_) )
, minimum_(set.minimum_)
, maximum_(set.maximum_)
, minimum_( std::exchange(set.minimum_, numeric_limits<size_t>::max()) )
, maximum_( std::exchange(set.maximum_, numeric_limits<size_t>::min()) )
{
}

GrammarSymbolSet::GrammarSymbolSet( const GrammarSymbolSet& set )
: set_( set.set_ )
, minimum_(set.minimum_)
, maximum_(set.maximum_)
, minimum_( set.minimum_ )
, maximum_( set.maximum_ )
{
}

Expand Down

0 comments on commit 5e01cd3

Please sign in to comment.