]> git.buserror.net Git - polintos/scott/priv.git/commitdiff
Fix GCC 4.1.3 issues
authorScott Wood <scott@thor.buserror.net>
Sat, 14 Jul 2007 17:20:51 +0000 (12:20 -0500)
committerScott Wood <scott@thor.buserror.net>
Sat, 14 Jul 2007 17:20:51 +0000 (12:20 -0500)
Makefile.target
idlcomp/idlparse.y
idlcomp/languages/c++/c++.h
idlcomp/types.cc
include/c/lowlevel/arch-x86/types.h
kernel/arch/x86/misc.cc

index f75920880d729af6c6bd74ed6692e3262cc48b0e..32102e48e81398b96eb9557a6e0d4dd34fd2e224 100644 (file)
@@ -6,6 +6,7 @@ $(error Please define $$(ARCH).)
 endif
 
 VALIDARCH := no
+DEFS := $(EXTRADEFS)
 
 ifeq ($(ARCH),x86)
 CROSS := i686-polintos-
index 079d077fda2b92baec39d235c31852f4b49e5a4e..e15c7dd6f68794c58d734e6a91299ce2f6c60109 100644 (file)
@@ -498,7 +498,7 @@ iface:
        } '{' iface_body '}' {
                pop_nspace();
                pop_nspace();
-               $$ = $<iface>3;
+               $$ = $<iface>4;
        }
 ;
 
index 4717233185de8d6987ff4ce384261831980b5ce9..51ea7070c737e8888e19461ce80be338e6b83420 100644 (file)
@@ -78,9 +78,9 @@ class CPPFile : public LangCallback {
        void output_methods(Interface *iface, Interface *super, bool prototype);
        void output_method_defs(Interface *iface);
 
-       void CPPFile::output_one_method(Interface *iface, Method *m, 
-                                       bool prototype, bool retval);
-       void CPPFile::output_one_method_ptr(Method *m, Interface *iface);
+       void output_one_method(Interface *iface, Method *m,
+                              bool prototype, bool retval);
+       void output_one_method_ptr(Method *m, Interface *iface);
        
        static void output_iface_ns(CPPFile *file, NameSpace *sym);
 
index c885f3fe15b93d92f23ee31a2b7cfdc731ffee24..c22d0bef92240b988a2b3cc6e5a4e1fae461bc8d 100644 (file)
@@ -320,7 +320,8 @@ void Datum::final_analysis()
                        yyerrorfl(name->file, name->line,
                                  "Explicit size %llu on \"%s\" is too small for "
                                  "type \"%s\", which has a minimum size of %u",
-                                 def.ucon, get_fq_name()->flatten()->c_str(),
+                                 (unsigned long long)def.ucon,
+                                 get_fq_name()->flatten()->c_str(),
                                  type->get_fq_name()->flatten()->c_str(), defsize);
                }
        }
index db959fa582e45e2b6907f77740a6bb4db6bee3e9..2aba0b4ae7645e7ebc721905b21c7eb0d812e2c6 100644 (file)
@@ -3,6 +3,8 @@
 #ifndef _LL_ARCH_TYPES_H
 #define _LL_ARCH_TYPES_H
 
+#include <stddef.h>
+
 typedef unsigned char       uint8_t;
 typedef unsigned short      uint16_t;
 typedef unsigned int        uint32_t;
@@ -12,11 +14,32 @@ typedef short               int16_t;
 typedef int                 int32_t;
 typedef long long           int64_t;
 
+#if 0
+#ifndef _SIZE_T
+#define _SIZE_T
 typedef unsigned long size_t;
+#endif
+#endif
+
+#ifndef _SSIZE_T
+#define _SSIZE_T
 typedef long ssize_t;
+#endif
+
+#ifndef _INTPTR_T
+#define _INTPTR_T
 typedef long intptr_t;
+#endif
+
+#ifndef _UINTPTR_T
+#define _UINTPTR_T
 typedef unsigned long uintptr_t;
+#endif
+
+#ifndef _PTRDIFF_T
+#define _PTRDIFF_T
 typedef long ptrdiff_t;
+#endif
 
 #define _LL_LONG_BYTES      4
 #define _LL_LONG_LOGBYTES   2
index 664549addff6ec8a72c2f44cd93f67a7d413d2e6..3e0091a9aeb08c10e0986e719a05a695c4950e35 100644 (file)
@@ -252,12 +252,12 @@ namespace Priv {
        
                union {
                        System::RunTime::ParamInfoBlock *pib;
-                       ulong exptr;
+                       uintptr_t exptr;
                };
                
                union {
-                       ulong caller;
-                       ulong exlen;
+                       uintptr_t caller;
+                       size_t exlen;
                };
                
                ulong eip, cs, eflags, user_esp, user_ss;