Bug Wrangling?

Hi, my name is Jason Switzer and I have been wanting to help out with LLVM for some time. I decided to start by going through the bug database and doing some wrangling (updating, verifying current behavior versus reported, etc) as it seemed like the easiest way to learn the code base. So far, I’ve found there are many low hanging fruit in the “quality-of-implementation” bugs, and I’ve run into some bugs that are rather aged. For example, I posted the following to bug 4665 (http://llvm.org/bugs/show_bug.cgi?id=4665):

This bug appears to be no longer an issue. As of r148640, the following is produced:

$ echo “int main() { unsigned int foo = -2; return foo; }” | clang -Wconversion -x c++ -

:1:33: warning: implicit conversion changes signedness: ‘int’ to ‘unsigned int’ [-Wsign-conversion]

int main() { unsigned int foo = -2; return foo; }

:1:44: warning: implicit conversion changes signedness: ‘unsigned int’ to ‘int’ [-Wsign-conversion]

int main() { unsigned int foo = -2; return foo; }

2 warnings generated.

The author of this bug was trying to use -Wall, which I’m not sure is valid for clang (it is for GCC, which reports this under -Wsign-compare). That being said, there is -Wconversion, which emits the “warn_impcast_integer_sign” warning (-Weverything turns on -Wconversion) at SemaChecking.cpp:3926.

Given that it picked up both implicit casts and reported them as a warning when requested, this bug should probably be considered RESOLVED.

This bug was reported 2.5 years ago and hasn’t seen a status change in 2 years. I don’t feel right changing the status of this without someone else at least seeing it and I’m afraid any email that bugzilla would send might get overlooked by those that could do meaningful review.

So what’s the current LLVM / Clang way of dealing with this? As a someone who’s just getting started with LLVM, I’d like to help, but I would hate to pump a ton of time going through a bunch of bugs only to have my help/feedback ignored. Should I double post my comments (llvm.org/bugs and cfe-dev)? I’m guessing that if I have a patch to make, I should post it to cfe-commits, but I am afraid that such small issues/changes might get lost there as well.

-Jason “s1n” Switzer

Hi, my name is Jason Switzer and I have been wanting to help out with LLVM for some time. I decided to start by going through the bug database and doing some wrangling (updating, verifying current behavior versus reported, etc) as it seemed like the easiest way to learn the code base.

Awesome, this is definitely welcome. I bet there is a lot of stuff in the database that is either dupable, already fixed, or doesn’t make sense anymore.

This bug was reported 2.5 years ago and hasn’t seen a status change in 2 years. I don’t feel right changing the status of this without someone else at least seeing it and I’m afraid any email that bugzilla would send might get overlooked by those that could do meaningful review.

So what’s the current LLVM / Clang way of dealing with this? As a someone who’s just getting started with LLVM, I’d like to help, but I would hate to pump a ton of time going through a bunch of bugs only to have my help/feedback ignored. Should I double post my comments (llvm.org/bugs and cfe-dev)? I’m guessing that if I have a patch to make, I should post it to cfe-commits, but I am afraid that such small issues/changes might get lost there as well.

The best thing to do here is to use your judgement. If it seems that something is obviously fixed, just close it as fixed and someone can reopen it. If you think something is questionable or wrong minded, feel free to post a comment in the bug or bring it to cfe-dev. Any work here is really appreciated, so I don’t think anyone will be annoyed with you asking questions :slight_smile:

-Chris