[Bug 134] gcc/d/dfrontend/outbuffer.c needs alloca.h on Solarish systems

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=134

--- Comment #3 from Iain Buclaw ibuc...@gdcproject.org ---
(In reply to Jason King from comment #2)
 Done -- note the fix corresponds to patching gcc/d/dfrontend/port.h
 
 Looking at gcc/d/dfrontend/port.h, it explicitly includes stdlib.h to get
 alloca(), so it seems like the check and include should be there.

My concern is that because upstream differs, this will be overwritten in a
month, and having it in the header may mask any other places where it is
needed.

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 122] Fails to compile std.parallelism.reduce

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=122

--- Comment #6 from Iain Buclaw ibuc...@gdcproject.org ---
Technical notes (so I don't forget when I look at this):

AssignExp::toElem
- e1-op == TOKslice
- this-ismemset == true

There is no shortcut for calling BUILT_IN_MEMSET here, so the initialisation is
handed down to IRState::doArraySet, which needlessly attempts to generate each
individual initialiser.

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 135] New: ICE when building current dub

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=135

Bug ID: 135
   Summary: ICE when building current dub
   Product: GDC
   Version: development
  Hardware: x86
OS: Linux
Status: NEW
  Severity: minor
  Priority: Normal
 Component: gdc
  Assignee: ibuc...@gdcproject.org
  Reporter: ket...@ketmar.no-ip.org

when building dub (2e1f98ac… Jun,12) with current gdc (11867844… Jun,14) i got
ICE:

source/dub/dub.d: In member function 'getAllConfigs':
source/dub/dub.d:723: error: insn does not satisfy its constraints:
(insn 953 283 284 16 (set (reg:DI 4 si)
(reg:DI 21 xmm0)) 82 {*movdi_internal}
 (expr_list:REG_UNUSED (reg:SI 5 di)
(nil)))
source/dub/dub.d:723: internal compiler error: in copyprop_hardreg_forward_1,
at regcprop.c:776

build flags: -O2 -march=core2 -mtune=core2 -frelease

not sure if it's bug in gdc or in gcc though, 'cause it works with -O2
-march=i686 -mtune=i686 -frelease

probably it's gcc 4.10 bug, and i can't test gdc 4.9, 'cause recent fixes not
yet backported to it.

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 135] ICE when building current dub

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=135

Ketmar Dark ket...@ketmar.no-ip.org changed:

   What|Removed |Added

   Priority|Normal  |Lowest
 Status|NEW |RESOLVED
 CC||ket...@ketmar.no-ip.org
 Resolution|--- |INVALID

--- Comment #1 from Ketmar Dark ket...@ketmar.no-ip.org ---
ah. i quickly hacked in recent fixes from master to gdc 4.9 and everything
works just fine, so it's definitely gcc bug. closing this report as invalid.

-- 
You are receiving this mail because:
You are watching all bug changes.


Re: GDC updated to use 2.065

2014-06-14 Thread Iain Buclaw via D.gnu
On 14 June 2014 02:39, Iain Buclaw ibuc...@gdcproject.org wrote:
 On 13 June 2014 23:59, Iain Buclaw ibuc...@gdcproject.org wrote:
 On 13 June 2014 08:23, Johannes Pfau via D.gnu d.gnu@puremagic.com wrote:
 Am Thu, 12 Jun 2014 23:57:01 +0200
 schrieb Joseph Rushton Wakeling via D.gnu d.gnu@puremagic.com:

 On 12/06/14 00:50, Iain Buclaw via D.gnu wrote:
  Bleeding edge, see gcc.version which has the snapshot version of gcc
  this was last tested and verified against.
 
  However if the last conversation I had with Johannes was of any
  indicator, if you hold onto your horses, you may find this
  backported to work on 4.9.x in the next weeks. :-)

 I have no horses to hold, but Johannes' work is always worth waiting
 for :-)


 No need to wait any longer, I already pushed the updated gdc-4.9 branch
 yesterday.

 Binary builds will be delayed until
 https://issues.dlang.org/show_bug.cgi?id=12900
 is fixed. I'd also recommend to delay linux distribution package
 updates but I hope that bug will be fixed soon.

 https://github.com/D-Programming-Language/dmd/pull/3662
 https://github.com/D-Programming-GDC/GDC/commit/91835c9e4f8787d2b347a19540e091744fca416f

 I would daresay all good to go.  But I am aware of a couple of bugs
 compiling realworld software (eg: vibe.d, and apparently dub?)

 OK, fixes pushed to get dub and vibe working against gdc

 Any other high priority bugs that need fixing? :)

If anyone is privileged enough to have gdc with 2.065 already, then
I'd like to suggest trying out dub and building all packages in
http://code.dlang.org using it, using various different compiler
flags, and report back any bugs found (with nice minimal cases I'd
hope)

Regards
Iain


[Bug 126] Add support for attribute to mark data as volatile.

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=126

--- Comment #16 from Martin Nowak c...@dawg.eu ---
(In reply to Johannes Pfau from comment #15)
 The classical hello world for these devices is usually blinking a LED
 (http://www.micahcarrick.com/tutorials/avr-microcontroller-tutorial/getting-
 started.html). This usually requires accessing two registers. Now if
 somebody asks us 'How does Hello World look like in D?' and we present a
 small D main function + 10 lines of ASM they'll laugh at us and will
 immediately stop considering D. It's the same for peek/poke.
 
Nope, that would only be in the header/library that defines all those MM I/O
registers. Those indirections are used for any embedded programming. For
example in avr-libc you'll find this macro expansion.
GPIOA - _SFR_MEM8(0x000A) - _MMIO_BYTE(0x000A) - (*(volatile uint8_t
*)(mem_addr)).
This expands to volatile, because volatile provides the correct semantics.
But you could as well expand it to some template in D which implements the
correct accesses.
This is what Michael did for ARM [1]. The only problem here is how to implement
volatile reads/writes semantically correct and with as little overhead as
possible. Currently he used shared for reading [2] and writing [3] and those
few places could as well be replaced with intrinsics or asm until intrinsics
are available.

https://github.com/JinShil/stm32_registers/blob/master/source/stm32/registers/rcc.d
https://github.com/JinShil/memory_mapped_io/blob/d19cefb42000cd06605ddf4d4d6b120670400144/source/mmio.d#L335
https://github.com/JinShil/memory_mapped_io/blob/d19cefb42000cd06605ddf4d4d6b120670400144/source/mmio.d#L402

-- 
You are receiving this mail because:
You are watching all bug changes.


Re: GDC updated to use 2.065

2014-06-14 Thread Joseph Rushton Wakeling via D.gnu

On 14/06/14 13:41, Iain Buclaw via D.gnu wrote:

If anyone is privileged enough to have gdc with 2.065 already, then
I'd like to suggest trying out dub and building all packages in
http://code.dlang.org using it, using various different compiler
flags, and report back any bugs found (with nice minimal cases I'd
hope)


Just finished building about 10 minutes ago :-)  I probably won't have free time 
to do the all-dub-packages test in the near future but can report that it plays 
fine with my 2.065-requiring libraries (hap.random and Dgraph), including 
working as dub dependencies.  (I haven't actually built dub itself with gdc yet.)


As usual speed seems on a par with LDC with the typical differences that GDC 
seems slightly ahead on raw number-crunching stuff and LDC seems ahead on 
template-heavy or range-based code (e.g. in hap.random, GDC optimizes the dice() 
function much better, but LDC seems ahead on the (Random)Sample class and on the 
range-based random distributions).


[Bug 136] New: Struct hidden context pointers

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=136

Bug ID: 136
   Summary: Struct hidden context pointers
   Product: GDC
   Version: development
  Hardware: All
OS: All
Status: NEW
  Severity: normal
  Priority: Normal
 Component: gdc
  Assignee: ibuc...@gdcproject.org
  Reporter: ibuc...@gdcproject.org

Keeping a record of this:

http://forum.dlang.org/thread/20130706211329.ga17...@quickfur.ath.cx

---
// Function to test if T is independently instantiable.
void f(T)() {
T t;
}

void main() {
int a = 42;
struct S {
int y;
bool f() { return (a == 42); }
}

f!S();
}
---

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 136] Struct hidden context pointers

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=136

--- Comment #1 from Iain Buclaw ibuc...@gdcproject.org ---
To decide whether or not this is actually a bug.

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 121] ICE when initializing immutable char to void

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=121

--- Comment #1 from Iain Buclaw ibuc...@gdcproject.org ---
So how did we get a CONSTRUCTOR for a scalar type?

That is a good question...

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 121] ICE when initializing immutable char to void

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=121

Iain Buclaw ibuc...@gdcproject.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Iain Buclaw ibuc...@gdcproject.org ---
https://github.com/D-Programming-GDC/GDC/commit/52d8237cc23cd3d56f9f8a229c3579a150ed3105

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 81] ICE in gimple_expand_cfg

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=81

--- Comment #4 from Iain Buclaw ibuc...@gdcproject.org ---
There will need to be some improvements around how gdc both builds all
frame/closure structures, and how gdc determines which 'this' context to pass
around.

The fix for this particular edge-case I have in a patch for, but currently
changing gdc's behaviour is in this codebase is like trying to tame a hydra. 
Fix one bug, create two regressions, no wait four, eight...

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 63] c++ compiler built even when --disable-bootstrap is given

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=63

Ketmar Dark ket...@ketmar.no-ip.org changed:

   What|Removed |Added

 CC||ket...@ketmar.no-ip.org

--- Comment #2 from Ketmar Dark ket...@ketmar.no-ip.org ---
(In reply to Brad Roberts from comment #0)
 I'd really like that time back.
you can get it with the following patch.
WARNING! only use it with --disable-bootstrap --enable-languages=d!

diff --git a/gcc/d/config-lang.in b/gcc/d/config-lang.in
index 0a76bea..68b2ada 100644
--- a/gcc/d/config-lang.in
+++ b/gcc/d/config-lang.in
@@ -30,7 +30,7 @@ target_libs=target-libphobos target-zlib
target-libbacktrace

 # The D frontend is written in C++, so we need to build the C++
 # compiler during stage 1.
-lang_requires_boot_languages=c++
+#lang_requires_boot_languages=c++

 gtfiles=\$(srcdir)/d/d-builtins.cc \$(srcdir)/d/d-lang.cc
\$(srcdir)/d/d-lang.h

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 122] Fails to compile std.parallelism.reduce

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=122

Iain Buclaw ibuc...@gdcproject.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #7 from Iain Buclaw ibuc...@gdcproject.org ---
https://github.com/D-Programming-GDC/GDC/commit/a3c0cb128a4b3b8d13c266b0101f4e7bd22455e5

-- 
You are receiving this mail because:
You are watching all bug changes.


[Bug 138] std.enconding: EncodingSchemeUtf16Native and EncodingSchemeUtf32Native invalid splicing

2014-06-14 Thread via D.gnu
http://bugzilla.gdcproject.org/show_bug.cgi?id=138

--- Comment #1 from Iain Buclaw ibuc...@gdcproject.org ---
Have you raised a PR upstream?

-- 
You are receiving this mail because:
You are watching all bug changes.