)]}'
{"id":"openocd~master~If9cca0a252d091bf01774ad33224904d807ee16c","project":"openocd","branch":"master","attention_set":{},"removed_from_attention_set":{"1000853":{"account":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"last_update":"2026-04-06 16:48:53.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"If9cca0a252d091bf01774ad33224904d807ee16c","subject":"flash/nor/fm4: Fix build on MSYS2 with Clang","status":"MERGED","created":"2026-03-22 20:32:19.000000000","updated":"2026-04-06 16:48:53.000000000","submitted":"2026-04-06 16:48:53.000000000","submitter":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"9539","meta_rev_id":"9b9f82bfffc10be89ceaf29698b75d0796d13375","_number":9539,"owner":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2026-04-06 16:48:53.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Code-Review":{"approved":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"all":[{"tag":"autogenerated:gerrit:merged","value":2,"date":"2026-04-06 16:48:53.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"value":0,"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-22 22:51:50.000000000","updated_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2026-03-23 01:41:37.000000000","updated_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-04-06 16:48:47.000000000","updated_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"reviewer":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"state":"REVIEWER"}],"messages":[{"id":"5d92be4645408074317e14c855c5c342dbb1dbf6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"real_author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"date":"2026-03-22 20:32:19.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"fc25c86b41831d89eed69bb2241c176592c0b662","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2026-03-23 01:41:37.000000000","message":"Patch Set 1: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/22008/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/22904/ : SUCCESS","accounts_in_message":[],"_revision_number":1},{"id":"593260464ac0c55333e99589fe99aab78b6dda9a","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2026-04-06 16:48:47.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"9b9f82bfffc10be89ceaf29698b75d0796d13375","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2026-04-06 16:48:53.000000000","message":"Change has been successfully cherry-picked as 3d83e9546e1f5050a7079eeca0a18d4259cd4949","accounts_in_message":[],"_revision_number":2}],"current_revision":"3d83e9546e1f5050a7079eeca0a18d4259cd4949","revisions":{"3d83e9546e1f5050a7079eeca0a18d4259cd4949":{"kind":"REWORK","_number":2,"created":"2026-04-06 16:48:53.000000000","uploader":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"ref":"refs/changes/39/9539/2","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/39/9539/2","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/2 \u0026\u0026 git checkout -b change-9539 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/39/9539/2","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"232cd0b0f1dfe08177ea2d584913433d23fdd9cf","subject":"Fix build issue on MSYS2 and Cygwin"}],"author":{"name":"Marc Schink","email":"dev@zapb.de","date":"2026-03-13 12:14:18.000000000","tz":60},"committer":{"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","date":"2026-04-06 16:48:53.000000000","tz":0},"subject":"flash/nor/fm4: Fix build on MSYS2 with Clang","message":"flash/nor/fm4: Fix build on MSYS2 with Clang\n\nThe to{upper,lower} macros on MSYS2 (native) and Cygwin are implemented\nas table lookups and expect values representable as \u0027unsigned char\u0027.\nPassing a signed char can lead to negative array indices and compile-time\nerrors (-Werror\u003dchar-subscripts).\n\nAdd explicit casts to \u0027unsigned char\u0027 to all affected is* calls, as\nrecommended by the TOUPPER(3) manual page.\n\nCheckpatch-ignore: COMMIT_LOG_LONG_LINE\n\n../src/flash/nor/fm4.c:608:28: error: array subscript is of type \u0027char\u0027 [-Werror,-Wchar-subscripts]\n  608 |                 if (pattern[i] !\u003d \u0027x\u0027 \u0026\u0026 tolower(s[i]) !\u003d tolower(pattern[i]))\n      |                                          ^~~~~~~~~~~~~\n/usr/include/ctype.h:172:25: note: expanded from macro \u0027tolower\u0027\n  172 |       (void) __CTYPE_PTR[__x]; (tolower) (__x);})\n      |                         ^~~~\n../src/flash/nor/fm4.c:608:45: error: array subscript is of type \u0027char\u0027 [-Werror,-Wchar-subscripts]\n  608 |                 if (pattern[i] !\u003d \u0027x\u0027 \u0026\u0026 tolower(s[i]) !\u003d tolower(pattern[i]))\n      |                                                           ^~~~~~~~~~~~~~~~~~~\n/usr/include/ctype.h:172:25: note: expanded from macro \u0027tolower\u0027\n  172 |       (void) __CTYPE_PTR[__x]; (tolower) (__x);})\n      |                         ^~~~\n\nChange-Id: If9cca0a252d091bf01774ad33224904d807ee16c\nSigned-off-by: Marc Schink \u003cdev@zapb.de\u003e\nReviewed-on: https://review.openocd.org/c/openocd/+/9539\nTested-by: jenkins\nReviewed-by: Antonio Borneo \u003cborneo.antonio@gmail.com\u003e\n"}},"fc4cdd546768754feb15e1334f2790cdd8bc2766":{"kind":"REWORK","_number":1,"created":"2026-03-22 20:32:19.000000000","uploader":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"ref":"refs/changes/39/9539/1","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/39/9539/1","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/1 \u0026\u0026 git checkout -b change-9539 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/39/9539/1","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/39/9539/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"3f2bc2dc7b2e3019b03e972df3ca9b0f3c6baa52","subject":"Remove remaining giveio parallel port remnants"}],"author":{"name":"Marc Schink","email":"dev@zapb.de","date":"2026-03-13 12:14:18.000000000","tz":60},"committer":{"name":"Marc Schink","email":"dev@zapb.de","date":"2026-03-18 13:29:09.000000000","tz":60},"subject":"flash/nor/fm4: Fix build on MSYS2 with Clang","message":"flash/nor/fm4: Fix build on MSYS2 with Clang\n\nThe to{upper,lower} macros on MSYS2 (native) and Cygwin are implemented\nas table lookups and expect values representable as \u0027unsigned char\u0027.\nPassing a signed char can lead to negative array indices and compile-time\nerrors (-Werror\u003dchar-subscripts).\n\nAdd explicit casts to \u0027unsigned char\u0027 to all affected is* calls, as\nrecommended by the TOUPPER(3) manual page.\n\nCheckpatch-ignore: COMMIT_LOG_LONG_LINE\n\n../src/flash/nor/fm4.c:608:28: error: array subscript is of type \u0027char\u0027 [-Werror,-Wchar-subscripts]\n  608 |                 if (pattern[i] !\u003d \u0027x\u0027 \u0026\u0026 tolower(s[i]) !\u003d tolower(pattern[i]))\n      |                                          ^~~~~~~~~~~~~\n/usr/include/ctype.h:172:25: note: expanded from macro \u0027tolower\u0027\n  172 |       (void) __CTYPE_PTR[__x]; (tolower) (__x);})\n      |                         ^~~~\n../src/flash/nor/fm4.c:608:45: error: array subscript is of type \u0027char\u0027 [-Werror,-Wchar-subscripts]\n  608 |                 if (pattern[i] !\u003d \u0027x\u0027 \u0026\u0026 tolower(s[i]) !\u003d tolower(pattern[i]))\n      |                                                           ^~~~~~~~~~~~~~~~~~~\n/usr/include/ctype.h:172:25: note: expanded from macro \u0027tolower\u0027\n  172 |       (void) __CTYPE_PTR[__x]; (tolower) (__x);})\n      |                         ^~~~\n\nChange-Id: If9cca0a252d091bf01774ad33224904d807ee16c\nSigned-off-by: Marc Schink \u003cdev@zapb.de\u003e\n"}}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dMAX -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX","-label:Verified\u003dMIN"],"failing_atoms":[]}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX","-label:Code-Review\u003dMIN"],"failing_atoms":[]}}]}
