This is an automated email from the git hooks/post-receive script. sthibault pushed a commit to branch master in repository mig.
commit c90ecfcb34470d7a682118c5b6bbf266dbd151d8 Author: Samuel Thibault <[email protected]> Date: Mon Sep 7 22:50:15 2015 +0000 patches/git-R-type-punned.patch: Drop patch gdb build is now fine with it --- debian/changelog | 6 ++ debian/patches/git-R-type-punned.patch | 155 --------------------------------- debian/patches/series | 1 - 3 files changed, 6 insertions(+), 156 deletions(-) diff --git a/debian/changelog b/debian/changelog index b240e28..ede35b0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +mig (1.5-5) unstable; urgency=medium + + * patches/git-R-type-punned.patch: Drop patch, gdb build is now fine with it. + + -- Samuel Thibault <[email protected]> Mon, 07 Sep 2015 21:51:48 +0000 + mig (1.5-4) unstable; urgency=medium * patches/git-23e8415: Cherry-pick from upstream to fix gdb build. diff --git a/debian/patches/git-R-type-punned.patch b/debian/patches/git-R-type-punned.patch deleted file mode 100644 index bf4a1c1..0000000 --- a/debian/patches/git-R-type-punned.patch +++ /dev/null @@ -1,155 +0,0 @@ -This reverts an upstream change which breaks gdb build, until commits d214e5e79e38b18bc3786b3e8ba0e55fdbba294b and 110f91128cf3e047eb1e04d346c27d71cc33fb9c get uploaded - -commit 44753cf5a30b9324d2c4ac9021843674bde5cc3c -Author: Justus Winter <[email protected]> -Date: Sun Feb 15 13:29:30 2015 +0100 - - Do not generate code dereferencing type-punned pointers - - For variable-length arrays, up to 2048 bytes are transmitted inline. - If the array is larger, the data is transmitted out-of-line, and a - pointer to a vm_allocated region is stored at the beginning of the - array. - - Previously, the generated code casted the field. Use a union instead. - - This fixes the gcc warning `dereferencing type-punned pointer will - break strict-aliasing rules [-Wstrict-aliasing]'. - - * global.c (OOLPostfix): New variable. - * global.h (OOLPostfix): New declaration. - * server.c (WriteServerCallArg): Avoid cast. - (WriteDestroyArg): Likewise. - (WritePackArgValue): Likewise. - (WritePackArg): Likewise. - * user.c (WriteExtractArgValue): Likewise. - * utils.c (WriteFieldDeclPrim): Generate a union with an additional - pointer field for variable-length arrays. - -diff --git b/global.c a/global.c -index 5685186..0a938f2 100644 ---- b/global.c -+++ a/global.c -@@ -48,7 +48,6 @@ const_string_t UserPrefix = ""; - const_string_t ServerDemux = strNULL; - const_string_t SubrPrefix = ""; - const_string_t RoutinePrefix = ""; --const_string_t OOLPostfix = "P"; - - string_t yyinname; - -diff --git b/global.h a/global.h -index 8dbb6fd..ca4d865 100644 ---- b/global.h -+++ a/global.h -@@ -53,7 +53,6 @@ extern const_string_t UserPrefix; - extern const_string_t ServerDemux; - extern const_string_t SubrPrefix; - extern const_string_t RoutinePrefix; --extern const_string_t OOLPostfix; - - extern int yylineno; - extern string_t yyinname; -diff --git b/server.c a/server.c -index 15fc128..56ccfc7 100644 ---- b/server.c -+++ a/server.c -@@ -777,9 +777,9 @@ WriteServerCallArg(FILE *file, const argument_t *arg) - arg->argTTName, - arg->argLongForm ? ".msgtl_header" : ""); - fprintf(file, "? %s ", InArgMsgField(arg)); -- fprintf(file, ": %s%s", -- InArgMsgField(arg), -- OOLPostfix); -+ fprintf(file, ": *((%s **)%s)", -+ FetchServerType(arg->argType->itElement), -+ InArgMsgField(arg)); - } - else - fprintf(file, "%s", InArgMsgField(arg)); -@@ -816,8 +816,8 @@ WriteDestroyArg(FILE *file, const argument_t *arg) - arg->argRequestPos, - arg->argTTName, - arg->argLongForm ? ".msgtl_header" : ""); -- fprintf(file, "\t\t\t%smig_deallocate((vm_offset_t) %s%s, ", -- SubrPrefix, InArgMsgField(arg), OOLPostfix); -+ fprintf(file, "\t\t\t%smig_deallocate(* (vm_offset_t *) %s, ", -+ SubrPrefix, InArgMsgField(arg)); - if (multiplier > 1) - fprintf(file, "%d * ", multiplier); - fprintf(file, " %s);\n", InArgMsgField(count)); -@@ -978,9 +978,9 @@ WritePackArgValue(FILE *file, const argument_t *arg) - arg->argTTName, - arg->argLongForm ? ".msgtl_header" : "", - arg->argDealloc->argVarName); -- fprintf(file, "\t\tOutP->%s%s = %sP;\n", -+ fprintf(file, "\t\t*((%s **)OutP->%s) = %sP;\n", -+ FetchServerType(btype), - arg->argMsgField, -- OOLPostfix, - arg->argVarName); - if (!arg->argRoutine->rtSimpleFixedReply) - fprintf(file, "\t\tmsgh_simple = FALSE;\n"); -@@ -1203,9 +1203,9 @@ WritePackArg(FILE *file, const argument_t *arg) - arg->argTTName, - arg->argLongForm ? ".msgtl_header" : "", - arg->argDealloc->argVarName); -- fprintf(file, "\t\tOutP->%s%s = %sP;\n", -+ fprintf(file, "\t\t*((%s **)OutP->%s) = %sP;\n", -+ FetchServerType(it->itElement), - arg->argMsgField, -- OOLPostfix, - arg->argVarName); - if (!arg->argRoutine->rtSimpleFixedReply) - fprintf(file, "\t\tmsgh_simple = FALSE;\n"); -diff --git b/user.c a/user.c -index 1f3ba3d..5451a03 100644 ---- b/user.c -+++ a/user.c -@@ -447,9 +447,9 @@ WritePackArgValue(FILE *file, const argument_t *arg) - arg->argLongForm ? ".msgtl_header" : "", - arg->argDealloc->argByReferenceUser ? "*" : "", - arg->argDealloc->argVarName); -- fprintf(file, "\t\tInP->%s%s = %s%s;\n", -+ fprintf(file, "\t\t*((%s **)InP->%s) = %s%s;\n", -+ FetchUserType(btype), - arg->argMsgField, -- OOLPostfix, - ref, arg->argVarName); - if (!arg->argRoutine->rtSimpleFixedRequest) - fprintf(file, "\t\tmsgh_simple = FALSE;\n"); -@@ -951,10 +951,9 @@ WriteExtractArgValue(FILE *file, const argument_t *arg) - fprintf(file, "\tif (!OutP->%s%s.msgt_inline)\n", - arg->argTTName, - arg->argLongForm ? ".msgtl_header" : ""); -- fprintf(file, "\t %s%s = OutP->%s%s;\n", -+ fprintf(file, "\t %s%s = *((%s **)OutP->%s);\n", - ref, arg->argVarName, -- arg->argMsgField, -- OOLPostfix); -+ FetchUserType(btype), arg->argMsgField); - fprintf(file, "\telse if (OutP->%s", count->argMsgField); - if (btype->itNumber > 1) - fprintf(file, " / %d", btype->itNumber); -diff --git b/utils.c a/utils.c -index 4c2a87b..396e743 100644 ---- b/utils.c -+++ a/utils.c -@@ -239,16 +239,10 @@ WriteFieldDeclPrim(FILE *file, const argument_t *arg, - * use the element type and maximum size specified. - * Note arg->argCount->argMultiplier == btype->itNumber. - */ -- fprintf(file, "\t\tunion {\n"); -- fprintf(file, "\t\t\t%s %s[%d];\n", -+ fprintf(file, "\t\t%s %s[%d];", - (*tfunc)(btype), - arg->argMsgField, - it->itNumber/btype->itNumber); -- fprintf(file, "\t\t\t%s *%s%s;\n", -- (*tfunc)(btype), -- arg->argMsgField, -- OOLPostfix); -- fprintf(file, "\t\t};"); - } - else - fprintf(file, "\t\t%s %s;", (*tfunc)(it), arg->argMsgField); diff --git a/debian/patches/series b/debian/patches/series index d8f6bde..484c732 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1 @@ -git-R-type-punned.patch git-23e8415 -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hurd/mig.git
