maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #08518
Re: [Commits] 13ecde8: Fix compiler warnings.
Hi Jan!
I have one concern with this patch. See below:
On Thu, 30 Apr 2015 at 11:45 Jan Lindström <jan.lindstrom@xxxxxxxxxxx>
wrote:
> revision-id: 13ecde851f08a7952f774707b19734f351bb6598
> parent(s): 5027e0b035f96e2583eff2d1ac71c7c44a093ac8
> committer: Jan Lindström
> branch nick: 10.0-git
> timestamp: 2015-04-30 11:44:34 +0300
> message:
>
> Fix compiler warnings.
>
> ---
> storage/innobase/sync/sync0sync.cc | 27 +++++++++++++--------------
> storage/xtradb/sync/sync0sync.cc | 27 +++++++++++++--------------
> 2 files changed, 26 insertions(+), 28 deletions(-)
>
> diff --git a/storage/innobase/sync/sync0sync.cc
> b/storage/innobase/sync/sync0sync.cc
> index 121f8e9..78d86f3 100644
> --- a/storage/innobase/sync/sync0sync.cc
> +++ b/storage/innobase/sync/sync0sync.cc
> @@ -862,10 +862,10 @@ sync_thread_levels_g(
> {
> ulint i;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> const sync_level_t* slot;
>
> I think this here has to be arr->at(i), or &(*arr)[i]. Doing &arr[i] will
actually get the i'th std::vector<> which does not exist, since arr is a
pointer to only one std::vector<>.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level <= limit) {
> if (warn) {
> @@ -897,10 +897,10 @@ sync_thread_levels_contain(
> {
> ulint i;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> const sync_level_t* slot;
>
> Same here.
> - slot = &arr->elems[i];
+ slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level == level) {
>
> @@ -944,10 +944,10 @@ sync_thread_levels_contains(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> sync_level_t* slot;
>
Same here.
> - slot = &arr->elems[i];
> + slot = (sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level == level) {
>
> @@ -993,10 +993,10 @@ sync_thread_levels_nonempty_gen(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; ++i) {
> + for (i = 0; i < arr->size(); ++i) {
> const sync_level_t* slot;
>
Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL
> && (!dict_mutex_allowed
> @@ -1053,10 +1053,10 @@ sync_thread_levels_nonempty_trx(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; ++i) {
> + for (i = 0; i < arr->size(); ++i) {
> const sync_level_t* slot;
>
Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL
> && (!has_search_latch
> @@ -1331,7 +1331,7 @@ sync_thread_add_level(
>
> sync_level.latch = latch;
> sync_level.level = level;
> - array->elems.push_back(sync_level);
> + array->push_back(sync_level);
>
> mutex_exit(&sync_thread_mutex);
> }
> @@ -1377,14 +1377,14 @@ sync_thread_reset_level(
>
> array = thread_slot->levels;
>
- for (std::vector<sync_level_t>::iterator it = array->elems.begin();
> it != array->elems.end(); ++it) {
> + for (std::vector<sync_level_t>::iterator it = array->begin(); it
> != array->end(); ++it) {
> sync_level_t level = *it;
>
> if (level.latch != latch) {
> continue;
> }
>
> - array->elems.erase(it);
> + array->erase(it);
> mutex_exit(&sync_thread_mutex);
> return(TRUE);
> }
> @@ -1471,7 +1471,6 @@ sync_thread_level_arrays_free(void)
>
> /* If this slot was allocated then free the slot memory
> too. */
> if (slot->levels != NULL) {
> -
> slot->levels->elems.erase(slot->levels->elems.begin(),slot->levels->elems.end());
> delete slot->levels;
> }
> }
> diff --git a/storage/xtradb/sync/sync0sync.cc
> b/storage/xtradb/sync/sync0sync.cc
> index d0e3b71..9dcdd9c 100644
> --- a/storage/xtradb/sync/sync0sync.cc
> +++ b/storage/xtradb/sync/sync0sync.cc
> @@ -970,10 +970,10 @@ sync_thread_levels_g(
> {
> ulint i;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> const sync_level_t* slot;
>
> Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level <= limit) {
> if (warn) {
> @@ -1005,10 +1005,10 @@ sync_thread_levels_contain(
> {
> ulint i;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> const sync_level_t* slot;
>
Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level == level) {
>
> @@ -1052,10 +1052,10 @@ sync_thread_levels_contains(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; i++) {
> + for (i = 0; i < arr->size(); i++) {
> sync_level_t* slot;
>
> Same here.
> - slot = &arr->elems[i];
> + slot = (sync_level_t*)&arr[i];
>
> if (slot->latch != NULL && slot->level == level) {
>
> @@ -1101,10 +1101,10 @@ sync_thread_levels_nonempty_gen(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; ++i) {
> + for (i = 0; i < arr->size(); ++i) {
> const sync_level_t* slot;
>
> Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL
> && (!dict_mutex_allowed
> @@ -1161,10 +1161,10 @@ sync_thread_levels_nonempty_trx(
>
> arr = thread_slot->levels;
>
> - for (i = 0; i < arr->n_elems; ++i) {
> + for (i = 0; i < arr->size(); ++i) {
> const sync_level_t* slot;
>
> Same here.
> - slot = &arr->elems[i];
> + slot = (const sync_level_t*)&arr[i];
>
> if (slot->latch != NULL
> && (!has_search_latch
> @@ -1456,7 +1456,7 @@ sync_thread_add_level(
>
> sync_level.latch = latch;
> sync_level.level = level;
> - array->elems.push_back(sync_level);
> + array->push_back(sync_level);
>
> mutex_exit(&sync_thread_mutex);
> }
> @@ -1502,14 +1502,14 @@ sync_thread_reset_level(
>
> array = thread_slot->levels;
>
> - for (std::vector<sync_level_t>::iterator it =
> array->elems.begin(); it != array->elems.end(); ++it) {
> + for (std::vector<sync_level_t>::iterator it = array->begin(); it
> != array->end(); ++it) {
> sync_level_t level = *it;
>
> if (level.latch != latch) {
> continue;
> }
>
> - array->elems.erase(it);
> + array->erase(it);
> mutex_exit(&sync_thread_mutex);
> return(TRUE);
> }
> @@ -1597,7 +1597,6 @@ sync_thread_level_arrays_free(void)
>
> /* If this slot was allocated then free the slot memory
> too. */
> if (slot->levels != NULL) {
> -
> slot->levels->elems.erase(slot->levels->elems.begin(),slot->levels->elems.end());
> delete slot->levels;
> }
> }
>