In addition to Stephen Kitt's answer, you could consider (especially if you are a developer yourself, and if the program –
file in your case – has source code that is not too difficult to understand) fetching the source code of that program (perhaps from your distribution) - since it is free software - and patching it, and also sending a patch.
If you take time to study the source code, you'll probably make a better bug report.
If you take more time to propose a fixing patch, you are likely to be considered more seriously (and IMHO you are acting more in the spirit of free software).
So use the freedom provided by free software: study its source code (freedom#1) and improve it (freedom#3).
Today it is very easy to publish (e.g. on github) your improved version and share it (freedom#2).
Be sure to have the latest release of the
file program. Many distributions are not using that (and perhaps the bug in your distro has already been fixed upstream).
I am not sure that your
--correct_extension behavior belongs to
file (which is a program to query, not change, your data). But if it does, it probably should be spelled
--rename-extension ... And once you try to implement that, you might discover that there are weird corner cases (what about a gzipped tar file, or a compressed C source file, or something which might need several file extensions).
Notice that (contrary to Windows) on Linux & Unix a file is actually an inode (see inode(7)) and can have several names (or none), and can be opened by several processes at once (read about file descriptors) - or none, even if most files have only one name (but see link(2) & stat(2)). Since the same file could be named
bar.gz it does not make a lot of sense to attach importance to file extensions. See also path_resolution(7).
So, if you try implementing your
correct-extension idea, you'll find out that it is not that simple to implement (and even to specify), and that there is no obvious simple behavior for that.
Probably, your idea is not very good, and cannot be easily implemented on Linux and POSIX systems (at least, not for all cases).
So I recommend to avoid even submitting a feature request (in its initial form, it is a loss of time for you, and for the developers of
file). Or else, work on it a lot, improve its specifications, and submit a patch.... Of course you'll spend a lot of work on that (and I really don't think it is worth the pain).
Perhaps also read some Unix programming book (like the old ALP, or something newer; and also intro(2) & syscalls(2)) and Operating Systems: Three Easy Pieces.