This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/56263] [avr] Provide strict address-space checking
- From: "demiurg_spb at freemail dot ru" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 12 Feb 2013 06:47:43 +0000
- Subject: [Bug target/56263] [avr] Provide strict address-space checking
- Auto-submitted: auto-generated
- References: <bug-56263-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56263
--- Comment #3 from demiurg_spb at freemail dot ru 2013-02-12 06:47:43 UTC ---
(In reply to comment #2)
> This cannot work because ISO/IEC TR18037 forces these literals into generic
> space.
>
ISO/IEC TR18037
5.1.2 Address-space type qualifiers:
If the type of an object is qualified by an address space name, the
object is allocated in the specified address space; otherwise, the object is
allocated in the generic address space.
I just re-read the standard.
I could not find any reason not permitted to place the data in __flash address
space in that case:
const char __flash* const __flash names[] = {"flash_str1", "flash_str2"};
IAR compilers it does, and that hinders gcc do the same?
I think it's an easy misunderstanding, preventing common sense ...