* support/regression/tests/bug1921073.c: new, added
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@5109
4a8a32a2-be11-0410-ad9d-
d568d2c75423
+2008-03-20 Maarten Brock <sourceforge.brock AT dse.nl>
+
+ * src/SDCCsymt.c (comparePtrType): fixed bug 1921073
+ * support/regression/tests/bug1921073.c: new, added
+
2008-03-17 Philipp Klaus Krause <pkk AT spth.de>
* src/z80/SDCCpeeph.c.c (callFuncByName):
int res;
if (IS_VOID (src->next) && IS_VOID (dest->next))
- return 1;
+ return bMustCast ? -1 : 1;
if ((IS_VOID (src->next) && !IS_VOID (dest->next)) ||
(!IS_VOID (src->next) && IS_VOID (dest->next)) )
return -1;
--- /dev/null
+/*
+ bug 1921073
+*/
+
+#include <testfwk.h>
+
+void f1(char c, const void * p)
+{
+ unsigned long v = (unsigned long)p;
+ c;
+ v;
+#if defined(SDCC_mcs51)
+ ASSERT((unsigned char)(v>>16)==0x80);
+#endif
+}
+
+void f2(const void * p)
+{
+ unsigned long v = (unsigned long)p;
+ v;
+#if defined(SDCC_mcs51)
+ ASSERT((unsigned char)(v>>16)==0x80);
+#endif
+}
+
+void
+testBug(void)
+{
+ f1(5, (code void *)0x1234);
+ f2((code void *)0x1234);
+}