Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
G
glog
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
glog
Commits
f176cc84
Commit
f176cc84
authored
Mar 31, 2016
by
Fumitoshi Ukai
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #96 from mayah/update-windows
Update src/windows/glog/logging.h to ToT
parents
4d391fe6
821d3e80
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
35 additions
and
16 deletions
+35
-16
logging.h
src/windows/glog/logging.h
+35
-16
No files found.
src/windows/glog/logging.h
View file @
f176cc84
...
...
@@ -52,14 +52,6 @@
#endif
#include <vector>
// Annoying stuff for windows -- makes sure clients can import these functions
#ifndef GOOGLE_GLOG_DLL_DECL
# if defined(_WIN32) && !defined(__CYGWIN__)
# define GOOGLE_GLOG_DLL_DECL __declspec(dllimport)
# else
# define GOOGLE_GLOG_DLL_DECL
# endif
#endif
#if defined(_MSC_VER)
#define GLOG_MSVC_PUSH_DISABLE_WARNING(n) __pragma(warning(push)) \
__pragma(warning(disable:n))
...
...
@@ -69,6 +61,15 @@
#define GLOG_MSVC_POP_WARNING()
#endif
// Annoying stuff for windows -- makes sure clients can import these functions
#ifndef GOOGLE_GLOG_DLL_DECL
# if defined(_WIN32) && !defined(__CYGWIN__)
# define GOOGLE_GLOG_DLL_DECL __declspec(dllimport)
# else
# define GOOGLE_GLOG_DLL_DECL
# endif
#endif
// We care a lot about number of bits things take up. Unfortunately,
// systems define their bit-specific ints in a lot of different ways.
// We use our own way, and have a typedef to get there.
...
...
@@ -133,15 +134,28 @@ typedef unsigned __int64 uint64;
#ifndef GOOGLE_PREDICT_BRANCH_NOT_TAKEN
#if 0
#define GOOGLE_PREDICT_BRANCH_NOT_TAKEN(x) (__builtin_expect(x, 0))
#define GOOGLE_PREDICT_FALSE(x) (__builtin_expect(x, 0))
#define GOOGLE_PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
#else
#define GOOGLE_PREDICT_BRANCH_NOT_TAKEN(x) x
#endif
#endif
#ifndef GOOGLE_PREDICT_FALSE
#if 0
#define GOOGLE_PREDICT_FALSE(x) (__builtin_expect(x, 0))
#else
#define GOOGLE_PREDICT_FALSE(x) x
#endif
#endif
#ifndef GOOGLE_PREDICT_TRUE
#if 0
#define GOOGLE_PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
#else
#define GOOGLE_PREDICT_TRUE(x) x
#endif
#endif
// Make a bunch of macros for logging. The way to log things is to stream
// things to LOG(<a particular severity level>). E.g.,
//
...
...
@@ -351,6 +365,9 @@ DECLARE_int32(minloglevel);
// default logging directory.
DECLARE_string
(
log_dir
);
// Set the log file mode.
DECLARE_int32
(
logfile_mode
);
// Sets the path of the directory into which to put additional links
// to the log files.
DECLARE_string
(
log_link
);
...
...
@@ -546,7 +563,7 @@ class LogSink; // defined below
// vector<string> *outvec;
// The cast is to disambiguate NULL arguments.
#define LOG_STRING(severity, outvec) \
LOG_TO_STRING_##severity(static_cast<
vector<
string>*>(outvec)).stream()
LOG_TO_STRING_##severity(static_cast<
std::vector<std::
string>*>(outvec)).stream()
#define LOG_IF(severity, condition) \
!(condition) ? (void) 0 : google::LogMessageVoidify() & LOG(severity)
...
...
@@ -714,10 +731,10 @@ DEFINE_CHECK_OP_IMPL(Check_GT, > )
// to reduce the overhead of CHECK statments by 2x.
// Real DCHECK-heavy tests have seen 1.5x speedups.
// The meaning of "string" might be different between now and
// The meaning of "string" might be different between now and
// when this macro gets invoked (e.g., if someone is experimenting
// with other string implementations that get defined after this
// file is included). Save the current meaning now and use it
// file is included). Save the current meaning now and use it
// in the macro.
typedef
std
::
string
_Check_string
;
#define CHECK_OP_LOG(name, op, val1, val2, log) \
...
...
@@ -1158,6 +1175,8 @@ public:
char
*
str
()
const
{
return
pbase
();
}
private
:
LogStream
(
const
LogStream
&
);
LogStream
&
operator
=
(
const
LogStream
&
);
base_logging
::
LogStreamBuf
streambuf_
;
int
ctr_
;
// Counter hack (for the LOG_EVERY_X() macro)
LogStream
*
self_
;
// Consistency check hack
...
...
@@ -1225,7 +1244,7 @@ public:
void
SendToSyslogAndLog
();
// Actually dispatch to syslog and the logs
// Call abort() or similar to perform LOG(FATAL) crash.
static
void
Fail
()
;
static
void
Fail
()
;
std
::
ostream
&
stream
();
...
...
@@ -1273,7 +1292,7 @@ class GOOGLE_GLOG_DLL_DECL LogMessageFatal : public LogMessage {
public
:
LogMessageFatal
(
const
char
*
file
,
int
line
);
LogMessageFatal
(
const
char
*
file
,
int
line
,
const
CheckOpString
&
result
);
~
LogMessageFatal
()
;
~
LogMessageFatal
()
;
};
// A non-macro interface to the log facility; (useful
...
...
@@ -1577,7 +1596,7 @@ class GOOGLE_GLOG_DLL_DECL NullStreamFatal : public NullStream {
NullStreamFatal
()
{
}
NullStreamFatal
(
const
char
*
file
,
int
line
,
const
CheckOpString
&
result
)
:
NullStream
(
file
,
line
,
result
)
{
}
~
NullStreamFatal
()
{
_exit
(
1
);
}
~
NullStreamFatal
()
throw
()
{
_exit
(
1
);
}
};
// Install a signal handler that will dump signal information and a stack
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment