<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>MCUXpresso General中的主题 Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
    <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382553#M4448</link>
    <description>&lt;P&gt;Hello Daniel,&lt;/P&gt;
&lt;P&gt;It seems this is a C++ grammar issue, have a look at:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/27812119/binding-of-reference-to-a-value-of-type-drops-qualifiers" target="_blank"&gt;https://stackoverflow.com/questions/27812119/binding-of-reference-to-a-value-of-type-drops-qualifiers&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/50274013/binding-to-reference-of-type-discards-qualifiers" target="_blank"&gt;https://stackoverflow.com/questions/50274013/binding-to-reference-of-type-discards-qualifiers&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Alice&lt;/P&gt;</description>
    <pubDate>Tue, 07 Dec 2021 09:47:23 GMT</pubDate>
    <dc:creator>Alice_Yang</dc:creator>
    <dc:date>2021-12-07T09:47:23Z</dc:date>
    <item>
      <title>C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1380737#M4440</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;I'm starting a new C++ project with LPC5526. Further I'm using CMSIS USART drivers for the first time.&lt;/P&gt;&lt;P&gt;My problem:&lt;/P&gt;&lt;P&gt;This simple assignment (in my code at line no. 65) fails:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;	ARM_USART_STATUS status1 = FLEXCOMM0_PERIPHERAL.GetStatus();&lt;/LI-CODE&gt;&lt;P&gt;The compiler emits three &lt;STRONG&gt;error&lt;/STRONG&gt; messages:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;../source/LPC55S28_Project_CMSIS-Test.cpp: In function 'int main()':&lt;BR /&gt;../source/LPC55S28_Project_CMSIS-Test.cpp:&lt;STRONG&gt;65&lt;/STRONG&gt;:60: &lt;STRONG&gt;error: no matching function for call to '_ARM_USART_STATUS(ARM_USART_STATUS)'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;65&lt;/STRONG&gt; | ARM_USART_STATUS status1 = FLEXCOMM0_PERIPHERAL.GetStatus();&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;and&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;...\workspace\LPC55S28_Project_CMSIS-Test\CMSIS_driver/Driver_USART.h:155:25: note: conversion of argument 1 would be ill-formed:&lt;BR /&gt;../source/LPC55S28_Project_CMSIS-Test.cpp:&lt;STRONG&gt;65&lt;/STRONG&gt;:59: &lt;STRONG&gt;error: binding reference of type 'const _ARM_USART_STATUS&amp;amp;' to 'ARM_USART_STATUS' {aka 'volatile _ARM_USART_STATUS'} discards qualifiers&lt;/STRONG&gt;&lt;BR /&gt;65 | ARM_USART_STATUS status1 = FLEXCOMM0_PERIPHERAL.GetStatus();&lt;BR /&gt;I&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;and&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;...\workspace\LPC55S28_Project_CMSIS-Test\CMSIS_driver/Driver_USART.h:155:25: note: conversion of argument 1 would be ill-formed:&lt;BR /&gt;../source/LPC55S28_Project_CMSIS-Test.cpp:&lt;STRONG&gt;65&lt;/STRONG&gt;:59: &lt;STRONG&gt;error: binding reference of type '_ARM_USART_STATUS&amp;amp;&amp;amp;' to 'ARM_USART_STATUS' {aka 'volatile _ARM_USART_STATUS'} discards qualifiers&lt;/STRONG&gt;&lt;BR /&gt;65 | ARM_USART_STATUS status1 = FLEXCOMM0_PERIPHERAL.GetStatus();&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;All error messages relate to this assignment in line 65.&lt;/P&gt;&lt;P&gt;To reproduce:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Create new project based on a recent SDK (e.g. LPC55S28):&lt;UL&gt;&lt;LI&gt;Select C++ project&lt;/LI&gt;&lt;LI&gt;Select Components -&amp;gt; CMSIS-Drivers -&amp;gt; usart_cmsis&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Use Clocks Tool to enable Flexcomm0 clock (FXCOMCLK0)&lt;/LI&gt;&lt;LI&gt;Use Pins Tool to enable a pin for FC0_TXD and a pin for FC0_RXD&lt;/LI&gt;&lt;LI&gt;Use Peripherals Tool to enable USART0&amp;nbsp;@ Flexcomm0&lt;UL&gt;&lt;LI&gt;Tools may need to be enabled first&lt;/LI&gt;&lt;LI&gt;In Components bar, click "+" next to Peripheral Drivers (Universal)&lt;/LI&gt;&lt;LI&gt;Select "FLEXCOMM_USART_CMSIS"&lt;/LI&gt;&lt;LI&gt;In configuration dialog, check "Enable RX" and "Enable TX"&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;In your main project file (where main() is defined) add&lt;UL&gt;&lt;LI&gt;&lt;FONT face="courier new,courier"&gt;void USART0_SignalEvent(uint32_t event) { }&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Finally add the line above.&lt;/LI&gt;&lt;LI&gt;Compile.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any ideas? Thanks!&lt;/P&gt;</description>
      <pubDate>Thu, 02 Dec 2021 15:22:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1380737#M4440</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-02T15:22:16Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1380746#M4441</link>
      <description>&lt;P&gt;For your information,&amp;nbsp;&lt;STRONG&gt;ARM_USART_STATUS&amp;nbsp;&lt;/STRONG&gt;is defined in "CMSIS_driver/Driver_USART.h" as follows&lt;/P&gt;&lt;LI-CODE lang="c"&gt;typedef volatile struct _ARM_USART_STATUS {
  uint32_t tx_busy          : 1;        ///&amp;lt; Transmitter busy flag
  uint32_t rx_busy          : 1;        ///&amp;lt; Receiver busy flag
  uint32_t tx_underflow     : 1;        ///&amp;lt; Transmit data underflow detected (cleared on start of next send operation)
  uint32_t rx_overflow      : 1;        ///&amp;lt; Receive data overflow detected (cleared on start of next receive operation)
  uint32_t rx_break         : 1;        ///&amp;lt; Break detected on receive (cleared on start of next receive operation)
  uint32_t rx_framing_error : 1;        ///&amp;lt; Framing error detected on receive (cleared on start of next receive operation)
  uint32_t rx_parity_error  : 1;        ///&amp;lt; Parity error detected on receive (cleared on start of next receive operation)
  uint32_t reserved         : 25;
} ARM_USART_STATUS;&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can query specific members directly, e.g.,&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;	uint32_t busy = FLEXCOMM0_PERIPHERAL.GetStatus().tx_busy;&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;This compiles without errors.&lt;/P&gt;</description>
      <pubDate>Thu, 02 Dec 2021 15:27:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1380746#M4441</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-02T15:27:29Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381171#M4443</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;How about directly use C project,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 03 Dec 2021 09:26:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381171#M4443</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-12-03T09:26:51Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381309#M4444</link>
      <description>&lt;P&gt;I want to use (a subset of) C++ features in my program.&lt;/P&gt;</description>
      <pubDate>Fri, 03 Dec 2021 14:37:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381309#M4444</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-03T14:37:16Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381775#M4445</link>
      <description>&lt;P&gt;Hello &lt;SPAN class="UserName lia-user-name lia-user-rank-Contributor-V lia-component-message-view-widget-author-username"&gt;&lt;A id="link_12" class="lia-link-navigation lia-page-link lia-user-name-link" style="color: #333f48;" href="https://community.nxp.com/t5/user/viewprofilepage/user-id/139806" target="_self" aria-label="View Profile of danielholala"&gt;&lt;SPAN class=""&gt;danielholala&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;,&lt;/P&gt;
&lt;P&gt;Please attach your whole project ,I will help to check on my side.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Alice&lt;/P&gt;</description>
      <pubDate>Mon, 06 Dec 2021 07:59:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381775#M4445</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-12-06T07:59:20Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381805#M4446</link>
      <description>&lt;P&gt;Alice,&lt;/P&gt;&lt;P&gt;please see attached.&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Daniel&lt;/P&gt;</description>
      <pubDate>Mon, 06 Dec 2021 08:38:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1381805#M4446</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-06T08:38:30Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382492#M4447</link>
      <description>&lt;P&gt;Hi everybody,&lt;/P&gt;&lt;P&gt;If&amp;nbsp; the "volatile" qualifier from&amp;nbsp;ARM_USART_STATUS is removed, the program compiles.&lt;/P&gt;&lt;P&gt;I wonder why "volatile" had been added to this struct in the first place. Usually it's required when a variable may be changed from outside of the current execution flow (i.e., memory mapped registers, interrupt service routines, multithreading).&amp;nbsp; I don't see why it's needed here.&lt;/P&gt;&lt;P&gt;Further, if need be, volatile could be added to specific members that require the use of the "volatile" qualifier, i.e.:&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;typedef struct _ARM_USART_STATUS {
  volatile uint32_t tx_busy          : 1;        ///&amp;lt; Transmitter busy flag
  volatile uint32_t rx_busy          : 1;        ///&amp;lt; Receiver busy flag
  volatile uint32_t tx_underflow     : 1;        ///&amp;lt; Transmit data underflow detected (cleared on start of next send operation)
  volatile uint32_t rx_overflow      : 1;        ///&amp;lt; Receive data overflow detected (cleared on start of next receive operation)
  volatile uint32_t rx_break         : 1;        ///&amp;lt; Break detected on receive (cleared on start of next receive operation)
  volatile uint32_t rx_framing_error : 1;        ///&amp;lt; Framing error detected on receive (cleared on start of next receive operation)
  volatile uint32_t rx_parity_error  : 1;        ///&amp;lt; Parity error detected on receive (cleared on start of next receive operation)
  uint32_t reserved         : 25;
} ARM_USART_STATUS;&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;This compiles, too.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 07 Dec 2021 08:33:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382492#M4447</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-07T08:33:36Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382553#M4448</link>
      <description>&lt;P&gt;Hello Daniel,&lt;/P&gt;
&lt;P&gt;It seems this is a C++ grammar issue, have a look at:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/27812119/binding-of-reference-to-a-value-of-type-drops-qualifiers" target="_blank"&gt;https://stackoverflow.com/questions/27812119/binding-of-reference-to-a-value-of-type-drops-qualifiers&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/50274013/binding-to-reference-of-type-discards-qualifiers" target="_blank"&gt;https://stackoverflow.com/questions/50274013/binding-to-reference-of-type-discards-qualifiers&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;Alice&lt;/P&gt;</description>
      <pubDate>Tue, 07 Dec 2021 09:47:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382553#M4448</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-12-07T09:47:23Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382789#M4449</link>
      <description>&lt;P&gt;Hi Alice,&lt;/P&gt;&lt;P&gt;I'm pretty sure that it's not a "C++ grammar issue". I checked your references and I think they don't apply here.&lt;/P&gt;&lt;P&gt;The issue arises because the C++ compiler employs a stricter type checking. Further, the implicitly created constructor does not support copying volatile values.&lt;/P&gt;&lt;P&gt;See:&lt;/P&gt;&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/17217300/why-am-i-not-provided-with-a-default-copy-constructor-from-a-volatile" target="_blank" rel="noopener"&gt;https://stackoverflow.com/questions/17217300/why-am-i-not-provided-with-a-default-copy-constructor-from-a-volatile&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/49367852/volatile-struct-struct-not-possible-why" target="_blank" rel="noopener"&gt;https://stackoverflow.com/questions/49367852/volatile-struct-struct-not-possible-why&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Solution: remove "volatile" qualifier from typedef. See also my other posting, please.&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Daniel&lt;/P&gt;</description>
      <pubDate>Tue, 07 Dec 2021 16:45:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1382789#M4449</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-07T16:45:18Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1386201#M4452</link>
      <description>&lt;P&gt;&lt;SPAN class="caseEventBody"&gt;&lt;SPAN class="caseEventRow"&gt;&lt;SPAN class="feeditemtext cxfeeditemtext"&gt;Hello Daniel.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="caseEventBody"&gt;&lt;SPAN class="caseEventRow"&gt;&lt;SPAN class="feeditemtext cxfeeditemtext"&gt;Not recommend remove&amp;nbsp; "volatile".How about assign data separately:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status1.rx_busy = FLEXCOMM0_PERIPHERAL.GetStatus&lt;WBR /&gt;().rx_busy;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status1.tx_busy = FLEXCOMM0_PERIPHERAL.GetStatus&lt;WBR /&gt;().tx_busy;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 14 Dec 2021 08:05:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1386201#M4452</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-12-14T08:05:25Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1386229#M4453</link>
      <description>&lt;P&gt;Hello Alice,&lt;/P&gt;&lt;P&gt;Thank you for your reply.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Why do you recommend not to remove "volatile"? Please advise.&lt;/P&gt;&lt;P&gt;What was the reason for adding "volatile" to the struct? The struct is returned by value (copied), so "volatile" seems superfluous.&lt;/P&gt;&lt;P&gt;Why not move the "volatile" declaration to each member instead? I suggested this earlier but you did not respond to it.&lt;/P&gt;&lt;P&gt;I appreciate your support and I'm looking forward to your response.&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Daniel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 14 Dec 2021 08:34:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1386229#M4453</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-14T08:34:06Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1389425#M4463</link>
      <description>&lt;P&gt;Hello everybody,&lt;/P&gt;&lt;P&gt;I checked the original source files on Github that served as templates for NXP's CMSIS drivers.&lt;/P&gt;&lt;P&gt;The type&amp;nbsp;&lt;SPAN&gt;&lt;FONT face="courier new,courier"&gt;ARM_USART_STATUS &lt;/FONT&gt;is defined in this file:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;A href="https://github.com/ARM-software/CMSIS_5/blob/master/CMSIS/Driver/Include/Driver_USART.h" target="_blank"&gt;https://github.com/ARM-software/CMSIS_5/blob/master/CMSIS/Driver/Include/Driver_USART.h&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;and the definition omits the volatile qualifier.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The changelog reads:&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;/* History:
 *  Version 2.4
 *    Removed volatile from ARM_USART_STATUS and ARM_USART_MODEM_STATUS
 *  Version 2.3
 *    ARM_USART_STATUS and ARM_USART_MODEM_STATUS made volatile
 /*&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'd appreciate if you'd forward this information to the SDK team.&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Dan&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 20 Dec 2021 08:52:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1389425#M4463</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2021-12-20T08:52:48Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1390574#M4464</link>
      <description>&lt;P&gt;This case replied on salesforce.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Dec 2021 07:05:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1390574#M4464</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-12-22T07:05:14Z</dc:date>
    </item>
    <item>
      <title>Re: C++ and CMSIS USART Drivers: compiler error on assignment</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1595659#M4848</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;this issue seems &lt;STRONG&gt;&lt;FONT size="5"&gt;fixed&lt;/FONT&gt;.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I just had a look at &lt;STRONG&gt;SDK&lt;/STRONG&gt;_2.x_LPC5526 &lt;STRONG&gt;2.13.0&lt;/STRONG&gt;&amp;nbsp;(after I installed MCUXpresso IDE 11.7.0).&lt;/P&gt;&lt;P&gt;Now CMSIS &lt;FONT face="courier new,courier" size="4"&gt;Driver_USART.h&lt;/FONT&gt;&amp;nbsp;is included as V2.4, i.e., with &lt;FONT face="courier new,courier"&gt;volatile&lt;/FONT&gt; dropped from&amp;nbsp;&lt;FONT face="courier new,courier" size="4"&gt;ARM_USART_STATUS &lt;/FONT&gt;and &lt;FONT face="andale mono,times"&gt;&lt;FONT face="courier new,courier" size="4"&gt;ARM_USART_MODEM_STATUS&lt;/FONT&gt;.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Feb 2023 14:28:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/C-and-CMSIS-USART-Drivers-compiler-error-on-assignment/m-p/1595659#M4848</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2023-02-08T14:28:10Z</dc:date>
    </item>
  </channel>
</rss>

