-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
crash on sys/wait.h
from glibc 2.17
#117
Comments
Update. The macro call is not the problem.
|
WEXITSTATUS()
in glibc 2.17sys/wait.h
from glibc 2.17
Narrowed down to the lines of code that cause an assertion. Here is the simple case that does not include wait, ..
Additional notes:
|
It appears this error (or perhaps similar on some other https://groups.google.com/a/lbl.gov/d/msg/upc-users/Jmu9BtvaStw/P7BjVhhaAQAJ |
AMDG
The root of the problem is that union wait1 is
being processed twice. It's supposed to be handled
when we reach the definition, but it gets processed
earlier at `union wait1 *__uptr`
In Christ,
Steven Watanabe
|
AMDG
I think this can be fixed by changing TransformTranslationUnitDecl
to use TransformDecl instead of TransformDeclaration (avoiding
duplicate processing) and changing TransformDecl to look up the
correct DeclContext instead of assuming that they are always
processed depth-first.
In Christ,
Steven Watanabe
|
I am running clang-upc2c 3.9.1-1 20171002 on a Scientific Linux 7.5 system (RHEL clone, like Centos). This system uses glbc 2.17.
The following 2-line program crashes clang-upc2c:
as show here:
Since this was a debug build of clang-upc2c, here is the backtrace from the generated core:
I wanted to provide a version of the reproducer with which one does not need to reproduce sys/wait.h from glibc 2.17. However, doing so seems to change the failure mode entirely:
The text was updated successfully, but these errors were encountered: