cancel
Showing results for 
Search instead for 
Did you mean: 

sdcc 3.5.0 rc1

Philipp Krause
Senior II
Posted on June 11, 2015 at 18:18

sdcc 3.5.0 is to be released soon. There already is release candidate 1.

You can download the release candidate and have a look at it. The more eyes on it, the less likely are hidden bugs.

The main changes from previous sdcc 3.4.0 are:

* Many fixes and improvements in the stm8 port

* --disable-non-free configure option

* z80 port fixes

* long long fixes

* Changed default language dialect from --std-sdcc89 to --std-sdcc99

* Reorganized and updated manual

* Reduced memory consumption (most noticeable for high --max-allocs-per-node)

* Faster compilation for stm8 (most noticeable for high --max-allocs-per-node)

* atoll() function for conversion of strings to long long

* __z88dk_fastcall and __z88dk_callee calling conventions for more efficient function calls and better compability with z88dk

* --lospre-unsafe-read renamed to --allow-unsafe-read

Due to the substantial improvements, in particular in the stm8 port, I think all STM8 programmers will want to change from 3.4.0 to 3.5.0.

Philipp

2 REPLIES 2
jagspaul
Associate II
Posted on June 13, 2015 at 19:55

I am using SDCC 3.50 for STM8.

I ma getting compiling error while using code/near/__data/eeprom.

ex.

__code uint8_t test_char

[2]

= {{1},{2}};

Can you help me how to use following options

data

 

near

far

 

code

regards

jags

Philipp Krause
Senior II
Posted on June 13, 2015 at 23:02

These keywords are not part of the C standard, but compiler extensions supported for some backends by sdcc. They are currently not supported for stm8. __data and __code are not planned to be implemented, as they are not useful on stm8. __near and __far will proably be implemented in the future, but they are not as important on stm8 as on other architectures, as they only provide a small benefit on stm8.

Philipp