Mercurial > hg > CbC > CbC_llvm
view clang/test/CodeGen/available-externally-hidden.cpp @ 266:00f31e85ec16 default tip
Added tag current for changeset 31d058e83c98
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 14 Oct 2023 10:13:55 +0900 |
parents | c4bab56944e8 |
children |
line wrap: on
line source
// RUN: %clang_cc1 -O2 -fvisibility=hidden -std=c++11 -emit-llvm -o - -triple x86_64-apple-darwin10 %s | FileCheck %s // Ensure that available_externally functions eliminated at -O2 are now // declarations, and are not emitted as hidden with -fvisibility=hidden, // but rather with default visibility. struct Filter { virtual void Foo(); int a; }; class Message{}; class Sender { public: virtual bool Send(Message* msg) = 0; protected: virtual ~Sender() {} }; // CHECK: declare noundef zeroext i1 @_ZThn16_N17SyncMessageFilter4SendEP7Message class SyncMessageFilter : public Filter, public Sender { public: bool Send(Message* message) override; }; class TestSyncMessageFilter : public SyncMessageFilter { }; int main() { TestSyncMessageFilter *f = new TestSyncMessageFilter; f->Send(new Message); }