vtr-verilog-to-routing
vtr-verilog-to-routing copied to clipboard
Remove Warnings in VTR CI Builds
There are some warnings in the VTR build which can make it challenging to develop since its sometimes hard to tell if they are new or not. Using this issue to collect the different warnings currently in VTR and track progress on removing them.
To look for warnings, I am using the CI runs to tell where warnings currently show up. The ultimate goal is to remove all warnings in the CI. I got a lot of them, but if people find more, feel free to add to the list! If one is resolved, feel free to check it off!
Most recently checked CI run: https://github.com/verilog-to-routing/vtr-verilog-to-routing/actions/runs/8444847760
Known warnings in most CI builds:
-
[x] warning: -jN forced in submake: disabling jobserver mode.
This comes up in builds that use multiple threads to make VTR. This seems to be an issue with the way we are using the make files.
-
[x] fatal: not a git repository
This one is showing up in a lot of the builds and is showing up all over the place. I cannot trace where this is coming from but I think this is comming from CMake somewhere. We should investigate what is causing it and try to resolve this issue. Maybe mentioned in issue #2402 but not explicitly the cause of the problem. May be a side-effect.
-
[ ] libsdcparse: Parser Deprecated and "fix-its can be applied"
This looks like a very simple fix, but because it is in an external library we may have to fix it in a weird way by contributing to the upstream somehow. The second warning "fix-its can be applied" may be the key to resolving this quickly. Perhaps running "--update" would fix this automatically?
-
[ ] libblifparse: Parser Deprecated and "fix-its can be applied"
This is identical to the libsdcparse warning. Can be solved the exact same way.
-
[x] XMLLINT
Can't tell if this is a warning or not, but it is showing up several times in the build and can probably be fixed easily.
-
[x] libvqm: "%error-verbose" Deprecated
Similar to the other deprecated directives. May be able to be fixed using "--update". Mentioned in issue #2403 Mentioned in issue #2294
-
[x] libvqm: strcpy
This one is a bit strange. The warning is valid, it is saying that the pointer to the first argument of strcpy cannot alias the second argument. The compiler will perform optimizations under the assumption that the two pointers do not alias. I am not sure why one would copy from one buffer to itself. This probably should be investigated. Mentioned in issue #2403 Mentioned in issue #2294
-
[x] vqm2blif: Comparison of integers with different signedness
-
[x] vqm2blif: Unknown escape sequence
I am pretty sure this is caused by how C++ interprets regex. I think this should be "\\$" instead of "\$" for example. Mentioned in issue #2294
-
[x] fasm: Pass by reference
These are pretty straightforward. Since these are const anyways, and the objects are large, pass by reference makes sense. Mentioned in issue #2412
Known warnings in other CI builds:
-
[x] ODIN-II Basic Test: Bison
Not sure what this means. Mentioned in issue #2402
-
[x] ODIN-II Basic Test: blifexplorer: QRand Deprecated
This one could be as simple as replacing the qrand() method. Mentioned in issue #2295
-
[x] ODIN-II Basic Test: odin_ii: noexcept
Maybe could be as simple as declaring something as "noexecpt". Mentioned in issue #2295
-
[x] ODIN-II Basic Test: blifexplorer: Other deprecation
Some more deprecations that should be fixed. Mentioned in issue #2295
-
[x] Parmys Basic Test: libvtrutil: Array may not be initialized
A bit more complicated but should be fixable.
-
[x] R: Basic with NO_GRAPHICS: unused parameters
Unused parameters. Should be void casted to pretend it is being used in these cases.