`A12-1-1`: Does not apply transitively
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece localizando a implementação da regra A12-1-1, cpp/autosar/explicit-constructor-base-class-initialization, e compare seu comportamento com o exemplo de dois construtores na issue. Determine se a regra deve aceitar a chamada transitiva ao construtor e, em seguida, verifique o resultado esperado com os testes existentes da regra ou adicione um caso específico se o local dos testes for encontrado.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Affected rules
A12-1-1:cpp/autosar/explicit-constructor-base-class-initialization
Rule A12-1-1 (required, implementation, automated)
Constructors shall explicitly initialize all virtual base classes, all direct
non-virtual base classes and all non-static data members.
Description
⚠️ I'm not 100% sure if the rule actually allows transitive calls to constructors ⚠️
Let an inherited class having two constructor a and b.
a calls the base class constructor while b calls a.
A12-1-1 gets reported on b because it does not call base class constructor directly (but it calls it transitively through a)
Example
class BaseClass {
public:
BaseClass() noexcept = default;
};
class Class final : public BaseClass {
public:
Class(void) noexcept : BaseClass() {};
Class(bool) noexcept : Class() {}; // Triggers `A12-1-1`
};
- Linguagem predominante
- CodeQL
- Estrelas
- 227
- Forks
- 82
- Merge médio
- 6d 7h
- PRs com merge (30d)
- 9
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de github/codeql-coding-standards
-
false positive/false negative Stardard-MISRA-C++
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
github/codeql-coding-standards#1172 ·
-
Difficulty-Low false positive/false negative false-negative Impact-Low Standard-MISRA-C
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
Difficulty-Medium false positive/false negative false-positive Impact-Medium Standard-CERT-C
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
github/codeql-coding-standards#1200 ·
-
`RULE-0-0-1`: "unreachable statement" false positives due to over-pruning of the control-flow graph Abertafalse positive/false negative
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
github/codeql-coding-standards#1190 ·
-
false positive/false negative
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 65/100
github/codeql-coding-standards#1175 ·
Todas as issues de github/codeql-coding-standards
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 comentário ·
-
good first issue
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
rust-bitcoin/rust-bitcoin#6930 · 1 comentário ·
-
Solved site promotion gate fails on runner PHP patch drift (expects 8.2.33, runner installs 8.2.34) Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Automattic/blocks-engine#2161 ·