diff options
Diffstat (limited to 'open_issues/gnat.mdwn')
-rw-r--r-- | open_issues/gnat.mdwn | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/open_issues/gnat.mdwn b/open_issues/gnat.mdwn new file mode 100644 index 00000000..2d17e275 --- /dev/null +++ b/open_issues/gnat.mdwn @@ -0,0 +1,102 @@ +[[!meta copyright="Copyright © 2011, 2012 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta title="Enable Ada programming (GCC: GNAT)"]] + +[[!tag open_issue_gcc]] + +Make the Ada programming language available on GNU/Hurd in its [[GCC]] GNAT +implementation, and enable Hurd-specific features. + +There is a [[!FF_project 259]][[!tag bounty]] on this task. + +--- + + +# Part I + +First, make the language functional, have its test suite pass without errors. + + +## Original [[community/GSoC]] Task Description + +[[!inline pages=community/gsoc/project_ideas/gnat feeds=no]] + + +## Debian GCC + +There has a patch been added for GNU/kFreeBSD: +`bfe081336914729fc0180c07ab4afa41965100f2`, `git-svn-id: +svn://svn.debian.org/gcccvs/branches/sid@5638 +6ca36cf4-e1d1-0310-8c6f-e303bb2178ca' + + +## IRC, freenode, #hurd, 2012-07-17 + + <gnu_srs> I've found the remaining problem with gnat backtrace for Hurd! + Related to the stack frame. + <gnu_srs> This version does not work: one relying on static assumptions + about the frame layout + <gnu_srs> Causing segfaults. + <gnu_srs> Any interest to create a test case out of that piece of code, + taken from gcc/ada/tracebak.c? + <braunr> gnu_srs: sure + + +### IRC, freenode, #hurd, 2012-07-18 + + <braunr> "Digging further revealed that the GNU/Hurd stack frame does not + seem to + <braunr> be static enough to define USE_GENERIC_UNWINDER in + gcc/ada/tracebak.c. + <braunr> " + <braunr> what do you mean by a "stack frame does not seem to be static + enough" ? + <gnu_srs> I can qoute from the source file if you want. Otherwise look at + the code yourself: gcc/ada/tracebak,c + <gnu_srs> I mean that something is wrong with the stack frame for + Hurd. This is the code I wanted to use as a test case for the stack. + <gnu_srs> Remember? + <braunr> more or less + <braunr> ah, "static assumptions" + <braunr> all right, i don't think anything is "wrong" with stack frames + <braunr> but if you use a recent version of gcc, as indicated in the code, + -fomit-frame-pointer is enabled by default + <braunr> so your stack frame won't look like it used to be without the + option + <braunr> hence the need for USE_GCC_UNWINDER + <braunr> http://en.wikipedia.org/wiki/Call_stack explains this very well + <gnu_srs> However, kfreebsd does not seem to need USE_GCC_UNWINDER, how + come? + <braunr> i guess they don't omit the frame pointer + <braunr> your fix is good btw + <gnu_srs> thanks + + +### IRC, freenode, #hurd, 2012-07-19 + + <gnu_srs> tschwinge: The bug in #681998 should go upstream. Applied in + Debian already. Hopefully this is the last patch needed for the port of + GNAT to Hurd. + + +--- + + +# Part II + +Next, Hurd-specific features can be added. Add an interface to the +language/environment for being able to do [[RPC]] calls, in order to program +[[hurd/translator]]s natively in Ada. + + +## Original [[community/GSoC]] Task Description + +[[!inline pages=community/gsoc/project_ideas/language_bindings feeds=no]] |