File tree 1 file changed +10
-2
lines changed 1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,14 @@ namespace tao::pq
27
27
private:
28
28
struct binder
29
29
{
30
+ binder () noexcept = default ;
31
+
32
+ binder ( const binder& ) = delete ;
33
+ binder ( binder&& ) = delete ;
34
+
35
+ void operator =( const binder& ) = delete ;
36
+ void operator =( binder&& ) = delete ;
37
+
30
38
virtual ~binder () = default ;
31
39
};
32
40
@@ -54,7 +62,7 @@ namespace tao::pq
54
62
std::size_t m_pos = 0 ;
55
63
std::unique_ptr< binder > m_binder[ Max ];
56
64
57
- std:: size_t m_size = 0 ;
65
+ int m_size = 0 ;
58
66
Oid m_types[ Max ];
59
67
const char * m_values[ Max ];
60
68
int m_lengths[ Max ];
@@ -66,7 +74,7 @@ namespace tao::pq
66
74
void bind_impl ( const A& a ) // TODO: protect against binding temporaries!
67
75
{
68
76
constexpr auto columns = parameter_traits< std::decay_t < const A& > >::columns;
69
- if ( m_size + columns > Max ) {
77
+ if ( ( static_cast < std:: size_t >( m_size ) + columns ) > Max ) {
70
78
throw std::length_error ( " too many parameters!" );
71
79
}
72
80
You can’t perform that action at this time.
0 commit comments