www.digitalmars.com         C & C++   DMDScript  

D.gnu - update

reply "Ben Hinkle" <bhinkle4 juno.com> writes:
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 08 2004
next sibling parent reply resistor mac.com writes:
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 10 2004
parent reply resistor mac.com writes:
Beautiful.  Absolutely beautiful.  It compiles and works on my Mac OS X box, and
is able to compile 
both hello world examples.  One thing that you might want to add to the README,
however:  on Mac OS 
X at least you need to add the flag "-static-libgcc".  This is because it will
try to require the GCC3.4 
libgcc, which won't be installed if you didn't do a make install.  Doing this
will force it to statically link 
to it, and prevent shared library errors.

Owen

In article <c0bh6v$2dau$1 digitaldaemon.com>, resistor mac.com says...
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 10 2004
parent reply d-lang brianhammond.com writes:
I am excited to see this as well but I had a problem getting GCC 3.4 built on OS
X (Panther).

I exported CFLAGS="-static-libgcc" and then followed the instructions in the D
source README.

"make bootstrap" (it's GNU make, I don't have a gmake) spins its wheels for a
LONG time and finally 
spits out:

/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4288:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function `type_passed_as':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4289: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
..
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4308:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function
`convert_for_arg_passing':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4309: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: At top level:
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:139: warning: 'build_field_call'
defined but not used
make[2]: *** [d/call.o] Error 1
make[1]: *** [stage2_build] Error 2
make: *** [bootstrap] Error 2

Any ideas?  I don't know anything about D internals and I figured I'd ask here
first since you had 
success on OS X.

Thanks!

Brian H.

In article <c0c3s5$bd0$1 digitaldaemon.com>, resistor mac.com says...
Beautiful.  Absolutely beautiful.  It compiles and works on my Mac OS X box, and
is able to compile 
both hello world examples.  One thing that you might want to add to the README,
however:  on Mac OS 
X at least you need to add the flag "-static-libgcc".  This is because it will
try to require the GCC3.4 
libgcc, which won't be installed if you didn't do a make install.  Doing this
will force it to statically link 
to it, and prevent shared library errors.

Owen

In article <c0bh6v$2dau$1 digitaldaemon.com>, resistor mac.com says...
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
parent reply resistor mac.com writes:
I'm sorry I was unclear: -static-libgcc is only necessary when compiling D
source code.  I was able to build the compiler with the instructions directly
out of the newest DMD repository.  Also, make sure you're using a GCC snapshot
that matches with the one the author used.

Owen

In article <c0dhse$2pd4$1 digitaldaemon.com>, d-lang brianhammond.com says...
I am excited to see this as well but I had a problem getting GCC 3.4 built on OS
X (Panther).

I exported CFLAGS="-static-libgcc" and then followed the instructions in the D
source README.

"make bootstrap" (it's GNU make, I don't have a gmake) spins its wheels for a
LONG time and finally 
spits out:

/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4288:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function `type_passed_as':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4289: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
..
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4308:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function
`convert_for_arg_passing':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4309: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: At top level:
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:139: warning: 'build_field_call'
defined but not used
make[2]: *** [d/call.o] Error 1
make[1]: *** [stage2_build] Error 2
make: *** [bootstrap] Error 2

Any ideas?  I don't know anything about D internals and I figured I'd ask here
first since you had 
success on OS X.

Thanks!

Brian H.

In article <c0c3s5$bd0$1 digitaldaemon.com>, resistor mac.com says...
Beautiful.  Absolutely beautiful.  It compiles and works on my Mac OS X box, and
is able to compile 
both hello world examples.  One thing that you might want to add to the README,
however:  on Mac OS 
X at least you need to add the flag "-static-libgcc".  This is because it will
try to require the GCC3.4 
libgcc, which won't be installed if you didn't do a make install.  Doing this
will force it to statically link 
to it, and prevent shared library errors.

Owen

In article <c0bh6v$2dau$1 digitaldaemon.com>, resistor mac.com says...
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
parent reply d-lang brianhammond.com writes:
I see.  I was using 3.4 from CVS; I guess there are some problems with the D
release and the current 
GCC 3.4 from CVS.  Using the snapshot mentioned, GCC was built without a problem
on OS X.

My GCC 3.4 source dir is ~/Projects/gcc-3.4-20040206
My GCC 3.4 build dir is ~/Projects/gcc-build

morphy:~/Projects/gcc-3.4-20040206/gcc/d$ gdmd -static-libgcc
-L/Users/bhammond/Projects/
gcc-build/gcc hello.d

morphy:~/Projects/gcc-3.4-20040206/gcc/d$ ./a.out 
hello world.

WOOHOO!
Thanks!

In article <c0djh1$2s8o$1 digitaldaemon.com>, resistor mac.com says...
I'm sorry I was unclear: -static-libgcc is only necessary when compiling D
source code.  I was able to build the compiler with the instructions directly
out of the newest DMD repository.  Also, make sure you're using a GCC snapshot
that matches with the one the author used.

Owen

In article <c0dhse$2pd4$1 digitaldaemon.com>, d-lang brianhammond.com says...
I am excited to see this as well but I had a problem getting GCC 3.4 built on OS
X (Panther).

I exported CFLAGS="-static-libgcc" and then followed the instructions in the D
source README.

"make bootstrap" (it's GNU make, I don't have a gmake) spins its wheels for a
LONG time and finally 
spits out:

/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4288:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function `type_passed_as':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4289: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
..
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4308:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function
`convert_for_arg_passing':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4309: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: At top level:
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:139: warning: 'build_field_call'
defined but not used
make[2]: *** [d/call.o] Error 1
make[1]: *** [stage2_build] Error 2
make: *** [bootstrap] Error 2

Any ideas?  I don't know anything about D internals and I figured I'd ask here
first since you had 
success on OS X.

Thanks!

Brian H.

In article <c0c3s5$bd0$1 digitaldaemon.com>, resistor mac.com says...
Beautiful.  Absolutely beautiful.  It compiles and works on my Mac OS X box, and
is able to compile 
both hello world examples.  One thing that you might want to add to the README,
however:  on Mac OS 
X at least you need to add the flag "-static-libgcc".  This is because it will
try to require the GCC3.4 
libgcc, which won't be installed if you didn't do a make install.  Doing this
will force it to statically link 
to it, and prevent shared library errors.

Owen

In article <c0bh6v$2dau$1 digitaldaemon.com>, resistor mac.com says...
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
parent resistor mac.com writes:
Yay!  Welcome to wide *coughcough* world of D users on Mac OS X!  I think that
makes three of use 
now!

Owen

In article <c0e4gk$p82$1 digitaldaemon.com>, d-lang brianhammond.com says...
I see.  I was using 3.4 from CVS; I guess there are some problems with the D
release and the current 
GCC 3.4 from CVS.  Using the snapshot mentioned, GCC was built without a problem
on OS X.

My GCC 3.4 source dir is ~/Projects/gcc-3.4-20040206
My GCC 3.4 build dir is ~/Projects/gcc-build

morphy:~/Projects/gcc-3.4-20040206/gcc/d$ gdmd -static-libgcc
-L/Users/bhammond/Projects/
gcc-build/gcc hello.d

morphy:~/Projects/gcc-3.4-20040206/gcc/d$ ./a.out 
hello world.

WOOHOO!
Thanks!

In article <c0djh1$2s8o$1 digitaldaemon.com>, resistor mac.com says...
I'm sorry I was unclear: -static-libgcc is only necessary when compiling D
source code.  I was able to build the compiler with the instructions directly
out of the newest DMD repository.  Also, make sure you're using a GCC snapshot
that matches with the one the author used.

Owen

In article <c0dhse$2pd4$1 digitaldaemon.com>, d-lang brianhammond.com says...
I am excited to see this as well but I had a problem getting GCC 3.4 built on OS
X (Panther).

I exported CFLAGS="-static-libgcc" and then followed the instructions in the D
source README.

"make bootstrap" (it's GNU make, I don't have a gmake) spins its wheels for a
LONG time and finally 
spits out:

/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4288:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function `type_passed_as':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4289: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
..
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4308:12: attempt to use poisoned 
"PROMOTE_PROTOTYPES"
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: In function
`convert_for_arg_passing':
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:4309: error: `PROMOTE_PROTOTYPES'
undeclared 
(first use in this function)
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c: At top level:
/Users/bhammond/Projects/gcc-3.4/gcc/d/call.c:139: warning: 'build_field_call'
defined but not used
make[2]: *** [d/call.o] Error 1
make[1]: *** [stage2_build] Error 2
make: *** [bootstrap] Error 2

Any ideas?  I don't know anything about D internals and I figured I'd ask here
first since you had 
success on OS X.

Thanks!

Brian H.

In article <c0c3s5$bd0$1 digitaldaemon.com>, resistor mac.com says...
Beautiful.  Absolutely beautiful.  It compiles and works on my Mac OS X box, and
is able to compile 
both hello world examples.  One thing that you might want to add to the README,
however:  on Mac OS 
X at least you need to add the flag "-static-libgcc".  This is because it will
try to require the GCC3.4 
libgcc, which won't be installed if you didn't do a make install.  Doing this
will force it to statically link 
to it, and prevent shared library errors.

Owen

In article <c0bh6v$2dau$1 digitaldaemon.com>, resistor mac.com says...
Wow!  That's wonderful!  I'm building it now.

Walter, do you think it would be possible to mirror this here?  I think that in
another point release or 
two it might do to announce Ben's progress to the usual news media.  I suspect
that if people saw that 
he'd made real progress, we might pick up some more people with GCC knowledge.
And, well, I don't 
want to Slashdot his ComCast homepage. ;)

Keep up the great work Ben!

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
prev sibling next sibling parent reply resistor mac.com writes:
Compiling on my P4 Linux box failed with these errors:

./../gcc-3.4-20040206/gcc/d/dmd/lexer.c: In member function `TOK
Lexer::number(Token*)':
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1473: error: integer constant is too
large for "long" type
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1475: error: integer constant is too
large for "long" type
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1484: error: integer constant is too
large for "long" type
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1486: error: integer constant is too
large for "long" type
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1494: error: integer constant is too
large for "long" type
./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1502: error: integer constant is too
large for "long" type

Owen

In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
parent "Ben Hinkle" <bhinkle4 juno.com> writes:
Hmm. I didn't see this in my build. I'll try unpacking a fresh gcc source
tree and gdmd tree and see if my working tree has something I didn't include
in the tar file.
-Ben

<resistor mac.com> wrote in message news:c0dksq$2usk$1 digitaldaemon.com...
 Compiling on my P4 Linux box failed with these errors:

 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c: In member function `TOK
 Lexer::number(Token*)':
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1473: error: integer constant is
too
 large for "long" type
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1475: error: integer constant is
too
 large for "long" type
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1484: error: integer constant is
too
 large for "long" type
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1486: error: integer constant is
too
 large for "long" type
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1494: error: integer constant is
too
 large for "long" type
 ./../gcc-3.4-20040206/gcc/d/dmd/lexer.c:1502: error: integer constant is
too
 large for "long" type

 Owen

 In article <c072fm$i09$1 digitaldaemon.com>, Ben Hinkle says...
another update off the gcc front-end:
http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

improvements: structs, enums, expression initializers, address-operator,
ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

Walter, here is the README.dmd that describes some changes I had to make
for
either the mac and linux:

* add #include "total.h" to top of a few .h files to avoid #include
  errors (eg, Loc not defined, enum TOK used before definition etc)
  Make sure this is outside of the include guards so that all files
  are included in the right order. Another way to fix this problem
  would be to include total.h in all the .c files but that was more
  tedious. Header files modified were root.h, mars.h, declaration.h,
dsymbol.h

* edit html.c to replace the variable "not" with "not_". Also even with
  the -funsigned-char flag to g++ memicmp calls still need explicit casts
  from unsigned char* to char*.

* to compile on Mac OS X change defines in constfold.c to avoid fmodl
  and redefine interger_t because that is defined in vm_types.h

* change mtype.c header includes for Mac OS X

If you want I can try to cut/paste code diffs.

-Ben
Feb 11 2004
prev sibling next sibling parent "C" <dont respond.com> writes:
Awesome!

C
"Ben Hinkle" <bhinkle4 juno.com> wrote in message
news:c072fm$i09$1 digitaldaemon.com...
 another update off the gcc front-end:
 http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

 improvements: structs, enums, expression initializers, address-operator,
 ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

 Walter, here is the README.dmd that describes some changes I had to make
for
 either the mac and linux:

 * add #include "total.h" to top of a few .h files to avoid #include
   errors (eg, Loc not defined, enum TOK used before definition etc)
   Make sure this is outside of the include guards so that all files
   are included in the right order. Another way to fix this problem
   would be to include total.h in all the .c files but that was more
   tedious. Header files modified were root.h, mars.h, declaration.h,
 dsymbol.h

 * edit html.c to replace the variable "not" with "not_". Also even with
   the -funsigned-char flag to g++ memicmp calls still need explicit casts
   from unsigned char* to char*.

 * to compile on Mac OS X change defines in constfold.c to avoid fmodl
   and redefine interger_t because that is defined in vm_types.h

 * change mtype.c header includes for Mac OS X

 If you want I can try to cut/paste code diffs.

 -Ben
Feb 11 2004
prev sibling parent reply "Walter" <walter digitalmars.com> writes:
Yes, please post the diff's or just email them to me. Thanks, -Walter

"Ben Hinkle" <bhinkle4 juno.com> wrote in message
news:c072fm$i09$1 digitaldaemon.com...
 another update off the gcc front-end:
 http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz

 improvements: structs, enums, expression initializers, address-operator,
 ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79

 Walter, here is the README.dmd that describes some changes I had to make
for
 either the mac and linux:

 * add #include "total.h" to top of a few .h files to avoid #include
   errors (eg, Loc not defined, enum TOK used before definition etc)
   Make sure this is outside of the include guards so that all files
   are included in the right order. Another way to fix this problem
   would be to include total.h in all the .c files but that was more
   tedious. Header files modified were root.h, mars.h, declaration.h,
 dsymbol.h

 * edit html.c to replace the variable "not" with "not_". Also even with
   the -funsigned-char flag to g++ memicmp calls still need explicit casts
   from unsigned char* to char*.

 * to compile on Mac OS X change defines in constfold.c to avoid fmodl
   and redefine interger_t because that is defined in vm_types.h

 * change mtype.c header includes for Mac OS X

 If you want I can try to cut/paste code diffs.

 -Ben
Feb 12 2004
parent "Ben Hinkle" <bhinkle4 juno.com> writes:
attached. I trimmed out the constfold change. There also should be a better way
to do the includes.

"Walter" <walter digitalmars.com> wrote in message
news:c0hfad$1il$1 digitaldaemon.com...
| Yes, please post the diff's or just email them to me. Thanks, -Walter
|
| "Ben Hinkle" <bhinkle4 juno.com> wrote in message
| news:c072fm$i09$1 digitaldaemon.com...
| > another update off the gcc front-end:
| > http://home.comcast.net/~benhinkle/gdmd-0.2.tar.gz
| >
| > improvements: structs, enums, expression initializers, address-operator,
| > ptr-operator, comma-operator, updated to gcc-3.4-20040206 and DMD-0.79
| >
| > Walter, here is the README.dmd that describes some changes I had to make
| for
| > either the mac and linux:
| >
| > * add #include "total.h" to top of a few .h files to avoid #include
| >   errors (eg, Loc not defined, enum TOK used before definition etc)
| >   Make sure this is outside of the include guards so that all files
| >   are included in the right order. Another way to fix this problem
| >   would be to include total.h in all the .c files but that was more
| >   tedious. Header files modified were root.h, mars.h, declaration.h,
| > dsymbol.h
| >
| > * edit html.c to replace the variable "not" with "not_". Also even with
| >   the -funsigned-char flag to g++ memicmp calls still need explicit casts
| >   from unsigned char* to char*.
| >
| > * to compile on Mac OS X change defines in constfold.c to avoid fmodl
| >   and redefine interger_t because that is defined in vm_types.h
| >
| > * change mtype.c header includes for Mac OS X
| >
| > If you want I can try to cut/paste code diffs.
| >
| > -Ben
| >
| >
|
|


begin 666 gnu_diffs-0.79
M9&EF9B M<F-D(&]R:6=D;60O9&5C;&%R871I;VXN:"!D;60O9&5C;&%R871I
M;VXN: HJ*BH ;W)I9V1M9"]D96-L87)A=&EO;BYH"51H=2!397  ,3$ ,C,Z



M1V5N97)A;"!0=6)L:6, 3&EC96YS92!I;B!G;G4N='AT+ T*(" O+R!3964 



M+7)C9"!O<FEG9&UD+V1S>6UB;VPN:"!D;60O9'-Y;6)O;"YH"BHJ*B!O<FEG

M9"]D<WEM8F]L+F )4W5N($9E8B  ." R,#HR.#HQ-B

M<G1I<W1I8RYT>'0L(&]R('1H92!'3E4 1V5N97)A;"!0=6)L:6, 3&EC96YS
M92!I;B!G;G4N='AT+ T*(" O+R!3964 =&AE(&EN8VQU9&5D(')E861M92YT



M8PHJ*BH ;W)I9V1M9"]H=&UL+F,)36]N($]C=" R,2 P,#HT-SHT-B



M871E('-T871E(#T 5%-T86=S=&%R=#L-

M=&%G;&5N(#T ,#L-
M("  ("  :68 *"IP(#T]("<O)RD-"B$ ("  ('L);F]T(#T ,3L-"B  "7 K

M+0H ( E44W)E<W0L"0DO+R!F;VQL;W=I;F< =&%G(&YA;64-"B  ("  ('T[

M("  (&EN="!N;W1?.PT*("  ("  =6YS:6=N960 8VAA<B J=&%G<W1A<G0 


M("  >PEN;W1?(#T ,3L-"B  "7 K*SL-"B  ("  ('T-"B  ("  ('=H:6QE

M?0T*(" -"B  ("  ("\O(%-E92!I9B!W92!P87)S960 82 \8V]D93X ;W( 
M/"]C;V1E/B!T86<-"B$ ("  (&EF("AT86=L96X )B8 ;65M:6-M<"AT86=S
M=&%R="P (D-/1$4B+"!T86=L96XI(#T
M;F]T*0T*(" )>R  (&EN0V]D92TM.PT*(" )("  (&EF("AI;D-O9&4 /" P


M:68 =V4 <&%R<V5D(&$ /&-O9&4^(&]R(#PO8V
M9B H=&%G;&5N("8F(&UE;6EC;7 H*&-H87(J*71A9W-T87)T+" B0T]$12(L
M('1A9VQE;BD /3T ,"D-"B  ("  ('L-"B$ "6EF("AN;W1?*0T*(" )>R  
M(&EN0V]D92TM.PT*(" )("  (&EF("AI;D-O9&4 /" P*0T*(" )"6EN0V]D


M<VEZ96]F*&YA;65S*2 O('-I>F5O9BAN86UE<ULP72D[(&DK*RD-"B  ("  
M('L-"B  "2\O($1O(&-A<V4 :6YS96YS:71I=F4 8V]M<&%R90T*(2 ):68 
M*&UE;6EC;7 H;F%M97-;:5TN;F%M92P <"P ;&5N9W1H*2 ]/2 P*0T*(" )
M("  (')E='5R;B!N86UE<UMI72YV86QU93L-"B  ("  ('T-"B  ("  (&5R

M,RPU,SD +2TM+0H ("  ("!F;W( *&D /2 P.R!I(#P <VEZ96]F*&YA;65S
M*2 O('-I>F5O9BAN86UE<ULP72D[(&DK*RD-"B  ("  ('L-"B  "2\O($1O
M(&-A<V4 :6YS96YS:71I=F4 8V]M<&%R90T*(2 ):68 *&UE;6EC;7 H;F%M
M97-;:5TN;F%M92P *&-H87(J*7 L(&QE;F=T:"D /3T ,"D-"B  "2  ("!R

M=6YR96-O9VYI>F5D(&-H87)A8W1E<B!E;G1I='DB*3L-"D]N;'D :6X 9&UD
M.B!I9"YC"D]N;'D :6X 9&UD.B!I9"YH"F1I9F8 +7)C9"!O<FEG9&UD+VUA


M.#HP-

M97)A;"!0=6)L:6, 3&EC96YS92!I;B!G;G4N='AT+ T*(" O+R!3964 =&AE





M97)?=#L-

M(&-O;7!L97A?=#L-"B  (V5L<V4-"B$ (VEN8VQU9&4 (F-O;7!L97A?="YH


M(#DT



M;&EF(&1E9FEN960H7U]$34-?7RD-"B  ='EP961E9B!?0V]M<&QE>"!L;VYG


M;&]N9R!L;VYG(&EN=&5G97)?=#L-"BL ='EP961E9B!L;VYG(&1O=6)L92!R

M('1Y<&5D968 =6YS:6=N960 8VAA< D)9%]U;G,X.PT*9&EF9B M<F-D(&]R
M:6=D;60O;6]D=6QE+F, 9&UD+VUO9'5L92YC"BHJ*B!O<FEG9&UD+VUO9'5L



M<"E;,%T ? T*(" )*" H=6YS:6=N960 8VAA<B J*7 I6S%=(#P
M"B  "2 H*'5N<VEG;F5D(&-H87( *BEP*5LR72 \/" Q-BD ? T*(2 )*" H
M=6YS:6=N960 8VAA<B J*7 I6S-=(#P

M9"!C:&%R("HI<"E;,%T ? T*(" )*" H=6YS:6=N960 8VAA<B J*7 I6S%=
M(#P
M? T*(2 )*" H=6YS:6=N960 8VAA<B J*7 I6S-=(#P

M='EP92YC"BHJ*B!O<FEG9&UD+VUT>7!E+F,)5V5D($IA;B R,2 P,SHT,#HU





M=&EC(&1O=6)L92!Z97)O(#T ,#L-

M870N:#X-"B  (VEN8VQU9&4 /&-O;7!L97 N:#X-
M;F5D*%]?05!03$5?7RD-"B$ (R  :6YC;'5D92 \;6%T:"YH/ T*(2 C96QI
M9B!?7T=.54-?7PT*(2 C("!I;F-L=61E(#QM871H

M/ T*(" C96YD:68-"BL <W1A=&EC(&1O=6)L92!Z97)O(#T ,#L-

M+F  9&UD+W)O;W0N: HJ*BH ;W)I9V1M9"]R;V]T+F )1G)I($IA;B  ,B P


M-2 M+2TM"B  +R\ :6X 87)T:7-T:6,N='AT+"!O<B!T:&4 1TY5($=E;F5R
M86P 4'5B;&EC($QI8V5N<V4 :6X 9VYU+G1X="X-"B  +R\ 4V5E('1H92!I
M;F-L=61E9"!R96%D;64N='AT(&9O<B!D971A:6QS+ T*(" -"BL (VEN8VQU

-(%)/3U1?2 T*(" -" ``
`
end
Feb 15 2004