aboutsummaryrefslogtreecommitdiffstats
path: root/meowpp
diff options
context:
space:
mode:
authorcathook <b01902109@csie.ntu.edu.tw>2014-10-21 21:10:15 +0800
committercathook <b01902109@csie.ntu.edu.tw>2014-10-21 21:10:15 +0800
commit5da947222ae34cb998b3bfa39dd818f7d06df2a7 (patch)
treedadf57e5ea17d696ae19fa8b4e358e4f02c5333d /meowpp
parentf7770eea2208dba6f3171adcb268f446263275cb (diff)
downloadmeow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar.gz
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar.bz2
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar.lz
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar.xz
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.tar.zst
meow-5da947222ae34cb998b3bfa39dd818f7d06df2a7.zip
Fix the waring "unused function"
Diffstat (limited to 'meowpp')
-rw-r--r--meowpp/meow/bases/pointers.h27
-rw-r--r--meowpp/meow/syntax.h7
-rw-r--r--meowpp/meow/threading/lockers.h2
-rwxr-xr-xmeowpp/test.py2
4 files changed, 29 insertions, 9 deletions
diff --git a/meowpp/meow/bases/pointers.h b/meowpp/meow/bases/pointers.h
index 9305bcf..59a676a 100644
--- a/meowpp/meow/bases/pointers.h
+++ b/meowpp/meow/bases/pointers.h
@@ -13,6 +13,7 @@
#include <cstdint>
#include <cstdlib>
+#include <meow/syntax.h>
#include <meow/bases/object.h>
#include <meow/debug/assert.h>
#include <meow/alloc.h>
@@ -164,6 +165,7 @@ class PointerTypesShareCounter {
size_t* counter_;
public:
+ PointerTypesShareCounter();
friend size_t* GetPointerCounter(PointerTypesShareCounter const* ptr);
};
@@ -171,6 +173,10 @@ size_t* GetPointerCounter(PointerTypesShareCounter const* ptr) {
return ptr->counter_;
}
+inline PointerTypesShareCounter::PointerTypesShareCounter() {
+ MEOW_SUPPRESS_UNUSED_WARNING(GetPointerCounter);
+}
+
}
@@ -477,6 +483,8 @@ class EntryPointerBase : public Object {
* @brief Copies from another EntryPointerBase.
*/
virtual void CopyFrom(EntryPointerBase const *) = 0;
+
+ using Object::CopyFrom;
/*!
* @brief Creates and returns a copy of itself.
@@ -548,7 +556,6 @@ class NormalEntryPointer :
counter_ = NewEntry<size_t>(1);
}
public:
- struct CREATE_OBJ {};
/*!
* @brief Points to NULL
@@ -578,7 +585,7 @@ class NormalEntryPointer :
* @param [in] args Arguments for the constructor of the Type.
*/
template<typename... Args>
- NormalEntryPointer(CREATE_OBJ, Args... args) :
+ NormalEntryPointer(size_t, Args... args) :
NormalEntryPointer(NewEntry<Type>(args...)) {}
@@ -622,12 +629,17 @@ class EntryPointerTypesShareImpl {
public:
friend Object* GetEntryPointerImpl(EntryPointerTypesShareImpl const* ptr);
+ EntryPointerTypesShareImpl();
};
Object* GetEntryPointerImpl(EntryPointerTypesShareImpl const* ptr) {
return ptr->impl_;
}
+inline EntryPointerTypesShareImpl::EntryPointerTypesShareImpl() {
+ MEOW_SUPPRESS_UNUSED_WARNING(GetEntryPointerImpl);
+}
+
}
@@ -672,8 +684,7 @@ class EntryPointer : public Object, public EntryPointerTypesShareImpl {
EntryPointer(size_t n, Args... args) {
set_impl_(
dynamic_cast<EntryPointerBase<Type>*>(
- NewEntry<NormalEntryPointer<Type>>(
- typename NormalEntryPointer<Type>::CREATE_OBJ(), args...)));
+ NewEntry<NormalEntryPointer<Type>>(0, args...)));
}
/*!
@@ -795,8 +806,12 @@ class EntryPointer : public Object, public EntryPointerTypesShareImpl {
* @param [in] t Another pointer.
*/
EntryPointer& CopyFrom(EntryPointer const & t) {
- DeleteEntry(get_impl_());
- set_impl_(t.get_impl_()->Copy());
+ if (is_entry_of_array() == t.is_entry_of_array()) {
+ get_impl_()->CopyFrom(t.get_impl_());
+ } else {
+ DeleteEntry(get_impl_());
+ set_impl_(t.get_impl_()->Copy());
+ }
return *this;
}
diff --git a/meowpp/meow/syntax.h b/meowpp/meow/syntax.h
index f1b1424..ec23ae6 100644
--- a/meowpp/meow/syntax.h
+++ b/meowpp/meow/syntax.h
@@ -32,9 +32,14 @@
for (__VA_ARGS__; with_flag__##__LINE__; \
with_flag__##__LINE__ = false)
-/**
+/*!
* @brief Python style keyword pass for empty block.
*/
#define pass
+/*!
+ * @brief Prevent some warning.
+ */
+#define MEOW_SUPPRESS_UNUSED_WARNING(x) (void)(x)
+
#endif // __MEOW_SYNTAX_H__
diff --git a/meowpp/meow/threading/lockers.h b/meowpp/meow/threading/lockers.h
index fe06222..a6360b2 100644
--- a/meowpp/meow/threading/lockers.h
+++ b/meowpp/meow/threading/lockers.h
@@ -5,7 +5,7 @@
* @author cathook
*/
#ifndef __MEOW_THREADING_LOCKERS_H__
-#define __MEOW_THREADING_LOCKES_H__
+#define __MEOW_THREADING_LOCKERS_H__
#include <meow/bases/object.h>
#include <meow/bases/state.h>
diff --git a/meowpp/test.py b/meowpp/test.py
index 40de33c..cbb7b8d 100755
--- a/meowpp/test.py
+++ b/meowpp/test.py
@@ -17,7 +17,7 @@ JOIN_TIMEOUT = 1
class Default(object):
COMPILER = 'g++'
- COMPILE_ARGS = '-g -Wall -Werror -std=c++11 -pedantic -pthread'
+ COMPILE_ARGS = '-g -Wall -Werror -std=c++11 -pedantic -pthread -lstdc++'
PROJ_PATH = os.getcwd()
TEST_PATH = os.getcwd()
TIME_LIMIT = 30