https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94317
Bug ID: 94317 Summary: gcc/config/arm/arm_mve.h:13907: strange assignment ? Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- >From static analyzer cppcheck: gcc/config/arm/arm_mve.h:13907:3: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] Source code is __extension__ extern __inline int64x2_t __attribute__ ((__always_inline__, __gnu_inline__, __artificial__)) __arm_vldrdq_gather_base_wb_s64 (uint64x2_t * __addr, const int __offset) { int64x2_t result = __builtin_mve_vldrdq_gather_base_wb_sv2di (*__addr, __offset); __addr += __offset; return result; } Maybe better code: __extension__ extern __inline int64x2_t __attribute__ ((__always_inline__, __gnu_inline__, __artificial__)) __arm_vldrdq_gather_base_wb_s64 (uint64x2_t * __addr, const int __offset) { int64x2_t result = __builtin_mve_vldrdq_gather_base_wb_sv2di (*__addr, __offset); *__addr += __offset; // here return result; } There seem to be a few duplicates: > trunk.git/gcc/config/arm/arm_mve.h:13917:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13927:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13937:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13947:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13957:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13967:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg] > trunk.git/gcc/config/arm/arm_mve.h:13977:3: warning: Assignment of function > parameter has no effect outside the function. Did you forget dereferencing > it? [uselessAssignmentPtrArg]