Skip to content

Multiple Targets does not build with IAR8.2 #5380

@teetak01

Description

@teetak01

Description

  • Type: Bug
  • Priority: Major

Bug

Target
NUCLEO_F429ZI,
B96B_F446VE,
DISCO_F413ZH,
DISCO_F429ZI,
DISCO_F469NI,
DISCO_F746NG,
DISCO_F769NI,
DISCO_L475VG_IOT01A,
DISCO_L476VG,
MTS_DRAGONFLY_F411RE,
MTS_MDOT_F411RE,
NUCLEO_F207ZG,
NUCLEO_F303RE,
NUCLEO_F303ZE,
NUCLEO_F401RE,
NUCLEO_F410RB,
NUCLEO_F411RE,
NUCLEO_F412ZG,
NUCLEO_F429ZI,
NUCLEO_F439ZI,
NUCLEO_F446RE,
NUCLEO_F446ZE,
NUCLEO_F746ZG,
NUCLEO_F756ZG,
NUCLEO_F767ZI,
NUCLEO_L432KC,
NUCLEO_L476RG,
NUCLEO_L486RG,
UBLOX_C030_N211,
UBLOX_C030_U201,
UBLOX_EVK_ODIN_W2,

Toolchain:
IAR

Toolchain version:
IAR ANSI C/C++ Compiler V8.20.1.57/LNX for ARM

Expected behavior
Code compiles

Actual behavior

mbed compile -t IAR -m NUCLEO_F429ZI

00:01:56.716 Compile [  1.8%]: BufferedSerial.cpp
00:01:56.716 
[Error] stm32f4xx_hal_def.h@132,30: [Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int const volatile *"
00:01:56.716 [Error] stm32f4xx_hal_def.h@134,34: [Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int volatile *"
00:01:56.716 [Error] stm32f4xx_hal_def.h@142,30: [Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int const volatile *"
00:01:56.716 [Error] stm32f4xx_hal_def.h@144,0: [Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int volatile *"
00:01:57.250 [ERROR] 
00:01:57.250   		newValue = (uint32_t)__LDREXW((volatile unsigned long *)ptr) | mask;
00:01:57.250   		                              ^
00:01:57.250 "app/mbed-os/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h",132  Error[Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int const volatile *"
00:01:57.250 
00:01:57.250   	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
00:01:57.250   	                           ^
00:01:57.250 "app/mbed-os/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h",134  Error[Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int volatile *"
00:01:57.250 
00:01:57.250   		newValue = (uint32_t)__LDREXW((volatile unsigned long *)ptr) &~mask;
00:01:57.250   		                              ^
00:01:57.250 "app/mbed-os/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h",142  Error[Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int const volatile *"
00:01:57.250 
00:01:57.250   	} while (__STREXW(newValue,(volatile unsigned long*) ptr));
00:01:57.250   	                           ^
00:01:57.250 "app/mbed-os/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_def.h",144  Error[Pe167]: argument of type "unsigned long volatile *" is incompatible with parameter of type "unsigned int volatile *"

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions