Merge branch 'develop' into wip-isildur-g-cppcheck-47-48-58

This commit is contained in:
g. economou
2024-05-01 10:59:59 +03:00
committed by GitHub
89 changed files with 1608 additions and 588 deletions

View File

@@ -109,20 +109,20 @@ void ComponentAlternation::append(unique_ptr<Component> component) {
vector<PositionInfo> ComponentAlternation::first() const {
// firsts come from all our subcomponents in position order. This will
// maintain left-to-right priority order.
vector<PositionInfo> firsts, subfirsts;
vector<PositionInfo> firsts;
for (const auto &c : children) {
subfirsts = c->first();
vector<PositionInfo> subfirsts = c->first();
firsts.insert(firsts.end(), subfirsts.begin(), subfirsts.end());
}
return firsts;
}
vector<PositionInfo> ComponentAlternation::last() const {
vector<PositionInfo> lasts, sublasts;
vector<PositionInfo> lasts;
for (const auto &c : children) {
sublasts = c->last();
vector<PositionInfo> sublasts = c->last();
lasts.insert(lasts.end(), sublasts.begin(), sublasts.end());
}
return lasts;

View File

@@ -320,7 +320,7 @@ void ComponentRepeat::wireRepeats(GlushkovBuildState &bs) {
}
}
DEBUG_PRINTF("wiring up %d optional repeats\n", copies - m_min);
DEBUG_PRINTF("wiring up %u optional repeats\n", copies - m_min);
for (u32 rep = MAX(m_min, 1); rep < copies; rep++) {
vector<PositionInfo> lasts = m_lasts[rep - 1];
if (rep != m_min) {

View File

@@ -157,10 +157,10 @@ void ComponentSequence::finalize() {
}
vector<PositionInfo> ComponentSequence::first() const {
vector<PositionInfo> firsts, subfirsts;
vector<PositionInfo> firsts;
for (const auto &c : children) {
subfirsts = c->first();
vector<PositionInfo> subfirsts = c->first();
replaceEpsilons(firsts, subfirsts);
if (!c->empty()) {
break;
@@ -229,12 +229,12 @@ void applyEpsilonVisits(vector<PositionInfo> &lasts,
}
vector<PositionInfo> ComponentSequence::last() const {
vector<PositionInfo> lasts, sublasts;
vector<PositionInfo> lasts;
vector<eps_info> visits(1);
auto i = children.rbegin(), e = children.rend();
for (; i != e; ++i) {
sublasts = (*i)->last();
vector<PositionInfo> sublasts = (*i)->last();
applyEpsilonVisits(sublasts, visits);
lasts.insert(lasts.end(), sublasts.begin(), sublasts.end());
if ((*i)->empty()) {

View File

@@ -260,14 +260,14 @@ void ParsedLogical::parseLogicalCombination(unsigned id, const char *logical,
u32 ekey, u64a min_offset,
u64a max_offset) {
u32 ckey = getCombKey(id);
vector<LogicalOperator> op_stack;
vector<u32> subid_stack;
u32 lkey_start = INVALID_LKEY; // logical operation's lkey
u32 paren = 0; // parentheses
u32 digit = (u32)-1; // digit start offset, invalid offset is -1
u32 subid = (u32)-1;
u32 i;
try {
vector<LogicalOperator> op_stack;
u32 paren = 0; // parentheses
for (i = 0; logical[i]; i++) {
if (isdigit(logical[i])) {
if (digit == (u32)-1) { // new digit start
@@ -284,7 +284,7 @@ void ParsedLogical::parseLogicalCombination(unsigned id, const char *logical,
if (logical[i] == '(') {
paren += 1;
} else if (logical[i] == ')') {
if (paren <= 0) {
if (paren == 0) {
throw LocatedParseError("Not enough left parentheses");
}
paren -= 1;