Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

RX62N Port - Illegal expression

Posted by Stephen Farrow on August 29, 2013
I am using the FreeRTOS port for the Renesas RX62N Microcontroller,
FreeRTOS V7.4.2
compiler = Renesas RX Family V.1.02.01.000
IDE = HEW4 V4.09.00.007
HW = Renesas Development Kit YRDKRX62N

I have built the Blinky project and I am getting the following errors.

Phase: RX C/C++ Compiler, File: RX C/C++ Compiler, dependency scan error
c:\workspace\backup of freertos qac test\demo\rx600_rx62n-rdk_renesas\rtosdemo\stackmacros.h(112) : DC307 (F) Illegal expression
Phase: RX C/C++ Compiler, File: RX C/C++ Compiler, dependency scan error
c:\workspace\backup of freertos qac test\demo\rx600_rx62n-rdk_renesas\rtosdemo\port.c(337) : DC306 (F) Syntax error
Phase: RX C/C++ Compiler, File: RX C/C++ Compiler, dependency scan error
c:\workspace\backup of freertos qac test\demo\rx600_rx62n-rdk_renesas\rtosdemo\stackmacros.h(112) : DC307 (F) Illegal expression
Building - RTOSDemo - Blinky

Any idea on what is causing these errors?SOMETHING HERE

RE: RX62N Port - Illegal expression

Posted by Richard on August 29, 2013
Yes - the dependency scanner is eccentric. By default it ignores the preprocessor directives and tries to includes files from all the FreeRTOS ports. You can ignore these warnings (I think the documentation page for the official demo says as much) because they are not compile or linker errors - you should find the code compiles and links without any problems.

Also, if you dig deep enough into the IDE options you will find an option that requests the dependency scanner includes processing of the pre-processor directives, selecting that option makes it much quieter.

Regards.

RE: RX62N Port - Illegal expression

Posted by Stephen Farrow on August 30, 2013
Hi Richard

In your reply are you refering to when an #include is made within a #ifdef of #ifndef statement, i.e. as in portable.h
I have temporarily modified code so no header files are included in this way. However I still get the errors.

The first error (DC306), seems to be associated with the following lines in port.c

MVTIPL #configMAX_SYSCALL_INTERRUPT_PRIORITY
MVTIPL #configKERNEL_INTERRUPT_PRIORITY

RE: RX62N Port - Illegal expression

Posted by Richard on August 30, 2013
In future it would be helpful if you could post the error text, rather than just the error number, so I don't have to look it up. In this case it appears to just be "syntax error".

Can you post the definitions of configMAX_SYSCALL_INTERRUPT_PRIORITY and configKERNEL_INTERRUPT_PRIORITY. They should be in FreeRTOSConfig.h.

Which compiler version are you using?

Regards.

RE: RX62N Port - Illegal expression

Posted by Stephen Farrow on September 2, 2013
Hi Richard

#define configKERNEL_INTERRUPT_PRIORITY 1
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 4

compiler = Renesas RX Family V.1.02.01.000

RE: RX62N Port - Illegal expression

Posted by Richard on September 2, 2013
I am using the same compiler version. This is the output I get when I build the HEW project located in FreeRTOS/Demo/RX600_RX62N-RDK_Renesas (unmodified, so with the same configKERNEL_INTERRUPT_PRIORITY and configMAX_SYSCALL_INTERRUPT_PRIORITY settings as you:

“Phase RX C/C++ Library Generator starting
Phase RX C/C++ Library Generator finished

Phase RX C/C++ Compiler starting
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\BlockQ.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\GenQTest.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\IntQueue.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\PollQ.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\QPeek.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\blocktim.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\death.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\flash.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\flop.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\integer.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\recmutex.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\Minimal\semtest.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\psock.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\timer.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\uip.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\Common\ethernet\FreeTCPIP\uip_arp.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\HighFrequencyTimerTest.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\IntQueueTimer.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\ParTest.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\dbsct.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\hwsetup.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\intprg.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\resetprg.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\sbrk.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Renesas-Files\vecttbl.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\main-full.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\uIP_Task.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\webserver\EMAC.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\webserver\httpd-cgi.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\webserver\phy.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\list.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\portable\MemMang\heap_2.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\portable\Renesas\RX600\port.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\queue.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\tasks.c
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\timers.c
Phase RX C/C++ Compiler finished

Phase RX Assembler starting
C:\temp\752\FreeRTOSV7.5.2\FreeRTOS\Source\portable\Renesas\RX600\port_asm.src
Phase RX Assembler finished

Phase OptLinker starting
Phase OptLinker finished

Build Finished
0 Errors, 0 Warnings”


Regards.

RE: RX62N Port - Illegal expression

Posted by Stephen Farrow on September 2, 2013
The DC306 syntax error, is displayed for the "Blinky" build.
I think the output you have shown is for the "Debug" build, if possible can you try again using the "Blinky" build

Note: Blinky build also throws up a L3100 (F) Section address overflow out of range : "L" but this can be rectified by adding the "L" section using the RX standard toolchain.

Best Regards

RE: RX62N Port - Illegal expression

Posted by Richard on September 2, 2013
“Note: Blinky build also throws up a L3100 (F) Section address overflow out of range : "L" but this can be rectified by adding the "L" section using the RX standard toolchain.


Confirm I can replicate that, and fixed it by adding in the L* section. I then get:

“Phase OptLinker starting
L2201 (E) Illegal library file : "C:\E\Dev\FreeRTOS\WorkingCopy\FreeRTOS\Demo\RX600_RX62N-RDK_Renesas\RTOSDemo\Blinky\RTOSDemo.lib"
Optimizing Linkage Editor Abort”


Going to the options dialogue, standard library tab, standard library category, and selecting "match.h" in the category window (so the selections match those used by the debug build configuration) fixed that.

After that my output from the build is as per my previous post.

Regards.


[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Meet Richard Barry and learn about running FreeRTOS on RISC-V at FOSDEM 2019

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


Careers

FreeRTOS and other embedded software careers at AWS.



FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Renesas

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner