This is an archive of the discontinued LLVM Phabricator instance.

[Clang] Conform to C++17 definition of literal types
Needs ReviewPublic

Authored by leoetlino on Nov 11 2021, 10:24 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

C++17 changed the definition of literal types so that unions that
have at least one non-static data member of non-volatile literal type
are also considered literal types.

This patch implements that new rule and also adds a test for closure
types (10.5.2) and for unions (10.5.3) to the existing test file for
literal types.

Diff Detail

Event Timeline

leoetlino requested review of this revision.Nov 11 2021, 10:24 AM
leoetlino created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptNov 11 2021, 10:24 AM

Fix Clang.CodeGenCXX::mangle-class-nttp.cpp test

leoetlino updated this revision to Diff 386642.Nov 11 2021, 1:28 PM

fix formatting issues (sorry for the spam!)

ping (as per the contributing guidelines)