llvm-project

Форк
0
/
cxx-default-delete.cpp 
27 строк · 842.0 Байт
1
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s
2

3
int i = delete; // expected-error{{only functions}}
4
int j = default; // expected-error{{special member functions}}
5

6
int f() = delete, g; // expected-error{{'= delete' is a function definition}}
7
int o, p() = delete; // expected-error{{'= delete' is a function definition}}
8

9
int q() = default, r; // expected-error{{only special member functions}} \
10
                      // expected-error{{'= default' is a function definition}}
11
int s, t() = default; // expected-error{{'= default' is a function definition}}
12

13
struct foo {
14
  foo() = default;
15
  ~foo() = delete;
16
  void bar() = delete;
17
};
18

19
void baz() = delete;
20

21
struct quux {
22
  int quux() = default; // expected-error{{constructor cannot have a return type}}
23
};
24

25
struct attrs {
26
  [[noreturn]] friend void deleted_with_attrs() = delete;
27
};
28

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.