-
Notifications
You must be signed in to change notification settings - Fork 139
Bugs reported and fixed
Pavel I. Kryukov edited this page Feb 20, 2020
·
70 revisions
MIPT-MIPS is an educational project, so we always want to teach most modern technologies and tools. However, they often contain bugs or some features are not implemented. That's why we report them in our nearest convenience.
- Clang++ bugs:
-
PR 36283— False positive dead code detection for C++17 structured binding, found by Pavel Kryukov during refactoring activity. -
PR 36284 — False positive detection of unneeded declaration
for user-defined literals used inside class templates. Bug observed by Aleksandr Misevich while debugging
MIPT-MIPS/#276
-
- libc++ bugs:
- Clang-Tidy false positives and UX enhancements:
-
PR 35457— „possible exception“ in constant expression -
PR 36963— bitwise assignment operators (&=, |=, ^=, <<=, >>=
) should be analyzed -
PR 36961— do not blame1u << 2
for containing a signed integer literal. -
PR 39770— fuchsia-multiple-inheritance should not warn on class forward declaration. -
PR 40599 — do not try to reinvent a constexpr version of
#define COMMA ,
. -
PR 40600 — do not try to reinvent a constexpr version of
#define STRING(x) # x
. - PR 40601 — support regexp for NOLINT statements.
-
PR 40604—int main()
cannot havestd::array
as an argument. -
PR 40633—std::string
is not a magic number. -
PR 40640— template instantiations should not expose enums as 'magic numbers'. - PR 43109 — do not warn about ODR violation for constexpr template variable.
- PR 44031 — fuchsia-multiple-inheritance should not warn on template class instantiation.
- PR 44065 — cplusplus.NewDeleteLeaks should not report on system headers
-
PR 44229— bugprone-branch-clone false positive with template functions and constexpr -
PR 44816— bugprone-infinite-loop false positive with CATCH2 - [PR 44977](https://bugs.llvm.org/show_bug.cgi?id=44977} — hicpp-signed-bitwise.IgnorePositiveIntegerLiterals should be recursive
-
-
Bug 225040
— False positive on UB right shifting in unreachable code. -
— internal compiler error while referencing template variableBug 451137
-
— cannot bind temporary int object to an rvalue referenceBug 457095
-
— extern template instantiation does not work for virtual functionsBug 457098
-
— ones-propagating right shift is optimized incorrectly. Firstly observed by Maxim Davydov inBug 833637
MIPT-MIPS/#1143 -
not a bugBug 846216
— false positive warning C4297 for constructor
- We used to build GNU Binutils with more pedantic Clang compiler as a part of continuous integration flow. During the procedure while resolving
MIPT-MIPS/#147, a bug in GNU Binutils was found by Kirill Nedostoev. Methodology was extracted to a separate repository to find more bugs in Binutils and Clang. -
PR libstdc++/82685— missing 'noexcept' specifier forstring_view
literals
- We improve RISC-V community infrastructure:
- Enhancements to Boost C++ libraries:
- We contribute to POPL option parser library, listed in POPL 1.2.0 release note.
- Minor fixes for ELFIO: serge1/ELFIO#26, serge1/ELFIO#27, serge1/ELFIO#28.
- Patches for GDB to support C++ simulators:
-
2283a21
Change "xor" name in cpu_core to allow building with iso646.h or C++ compiler by Vyacheslav Kompan -
444b3fa
Add 'extern C' if simulator is written in C++ -
8f0a214
Include <string.h> to dis-asm.h to get strchr declaration -
dc7e818
sim: Fix definition of SIM_ARANGE_INLINE -
7516c26
Do not expand macros to 'defined' -
f47674b
sim-utils.c: prevent buffer overflow.
-
- Infrastructure improvements for CEN64:
- https://github.com/n64dev/cen64/pull/100
- https://github.com/n64dev/cen64/pull/101
- https://github.com/n64dev/cen64/pull/102
- https://github.com/n64dev/cen64/pull/104
- https://github.com/n64dev/cen64/pull/105
- https://github.com/n64dev/cen64/pull/107
- https://github.com/n64dev/cen64/pull/108
- https://github.com/n64dev/cen64/pull/109
- https://github.com/n64dev/cen64/pull/110
- https://github.com/n64dev/cen64/pull/137
- Fix for MS Visual Studio build of LibELF was reported to Michael "Tired" Riepe who created the library. Unfortunately, Michael had not responded yet, so changes were published to WolfgangSt/libelf#1.
MIPT-V / MIPT-MIPS — Cycle-accurate pre-silicon simulation.