CBMC
ms_cl_version.h
Go to the documentation of this file.
1
/*******************************************************************\
2
3
Module: Visual Studio CL version numbering scheme
4
5
Author: Daniel Kroening
6
7
Date: August 2018
8
9
\*******************************************************************/
10
11
#ifndef CPROVER_GOTO_CC_MS_CL_VERSION_H
12
#define CPROVER_GOTO_CC_MS_CL_VERSION_H
13
14
#include <iosfwd>
15
#include <string>
16
17
#include <
util/config.h
>
18
19
class
ms_cl_versiont
20
{
21
public
:
22
unsigned
v_major
,
v_minor
;
23
24
void
get
(
const
std::string &executable);
25
26
bool
is_at_least
(
unsigned
v_major
,
unsigned
v_minor
= 0)
const
;
27
28
configt::ansi_ct::c_standardt
default_c_standard
;
29
configt::cppt::cpp_standardt
default_cxx_standard
;
30
31
ms_cl_versiont
()
32
:
v_major
(0),
33
v_minor
(0),
34
default_c_standard
(
configt
::ansi_ct::c_standardt::C89),
35
default_cxx_standard
(
configt
::cppt::cpp_standardt::CPP98)
36
{
37
}
38
39
enum class
targett
40
{
41
UNKNOWN
,
42
x86
,
43
x64
,
44
ARM
45
}
target
;
46
};
47
48
std::ostream &
operator<<
(std::ostream &,
const
ms_cl_versiont
&);
49
50
#endif // CPROVER_GOTO_CC_MS_CL_VERSION_H
configt::cppt::cpp_standardt
cpp_standardt
Definition:
config.h:285
operator<<
std::ostream & operator<<(std::ostream &, const ms_cl_versiont &)
Definition:
ms_cl_version.cpp:70
ms_cl_versiont::v_major
unsigned v_major
Definition:
ms_cl_version.h:22
ms_cl_versiont::v_minor
unsigned v_minor
Definition:
ms_cl_version.h:22
configt
Globally accessible architectural configuration.
Definition:
config.h:118
ms_cl_versiont::targett::UNKNOWN
@ UNKNOWN
ms_cl_versiont::default_cxx_standard
configt::cppt::cpp_standardt default_cxx_standard
Definition:
ms_cl_version.h:29
ms_cl_versiont::default_c_standard
configt::ansi_ct::c_standardt default_c_standard
Definition:
ms_cl_version.h:28
ms_cl_versiont::targett
targett
Definition:
ms_cl_version.h:39
ms_cl_versiont::targett::ARM
@ ARM
ms_cl_versiont
Definition:
ms_cl_version.h:19
ms_cl_versiont::targett::x86
@ x86
config.h
ms_cl_versiont::is_at_least
bool is_at_least(unsigned v_major, unsigned v_minor=0) const
Definition:
ms_cl_version.cpp:65
ms_cl_versiont::ms_cl_versiont
ms_cl_versiont()
Definition:
ms_cl_version.h:31
ms_cl_versiont::targett::x64
@ x64
ms_cl_versiont::get
void get(const std::string &executable)
Definition:
ms_cl_version.cpp:18
configt::ansi_ct::c_standardt
c_standardt
Definition:
config.h:142
ms_cl_versiont::target
enum ms_cl_versiont::targett target
src
goto-cc
ms_cl_version.h
Generated by
1.8.17