This is an archive of the discontinued LLVM Phabricator instance.

[libc] Remove GPU string functions incompatible with C++
ClosedPublic

Authored by jhuber6 on Jul 10 2023, 8:07 AM.

Details

Summary

These functions have definitions differing between C and C++. GNU
respects the C++ definitions while the LLVM libc does not. This causes
many bugs and the current hack creates other issues. Rather than hack
around this I'd rather temporarily disable these than regress with the
integration into other offloading languages. We lose test support for
them but we should be able to re-enable these once the libc headers
provide these correctly.

Diff Detail

Event Timeline

jhuber6 created this revision.Jul 10 2023, 8:07 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptJul 10 2023, 8:07 AM
jhuber6 requested review of this revision.Jul 10 2023, 8:07 AM
Herald added a project: Restricted Project. · View Herald TranscriptJul 10 2023, 8:07 AM
Herald added a subscriber: cfe-commits. · View Herald Transcript
JonChesterfield accepted this revision.Jul 10 2023, 8:14 AM

Is this a const thing? If so I'd naively hope we can declare both in C++ mode and alias them, but I can believe that is detectably broken.

How does glibc manage their hack?

This revision is now accepted and ready to land.Jul 10 2023, 8:14 AM
This revision was landed with ongoing or failed builds.Jul 10 2023, 8:40 AM
This revision was automatically updated to reflect the committed changes.