summaryrefslogtreecommitdiff
path: root/build2/cxx-modules/modtest/bar
blob: bc14c7c7ee444dd5afd253d22bdae0da49fac903 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// file      : bar -*- C++ -*-
// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

// #include <string>

// Define bar module interface.
//
// For VC must be included only into module implementation (bar.cxx). The
// module should be imported into consumer file with import declaration.
//
// For CLang must be #included into both module implementation and consumer
// files.
//

#if defined(MODTEST_USE_MODULES) && defined(_MSC_VER)
module bar;
export
{
#endif

int
bar_value (int v);

struct bar
{
  explicit bar (int v);

  int
  value ();

//  std::string
//  message (const char* s) const;

private:
  int v_;
};

// Close module export declaration.
//
#if defined(MODTEST_USE_MODULES) && defined(_MSC_VER)
}
#endif