{"action":"created","issue":{"url":"https://api.github.com/repos/arduino/Arduino/issues/2914","labels_url":"https://api.github.com/repos/arduino/Arduino/issues/2914/labels{/name}","comments_url":"https://api.github.com/repos/arduino/Arduino/issues/2914/comments","events_url":"https://api.github.com/repos/arduino/Arduino/issues/2914/events","html_url":"https://github.com/arduino/Arduino/issues/2914","id":66394598,"number":2914,"title":"re: poor compiler/source code error reporting","user":{"login":"jbhome","id":2666582,"avatar_url":"https://avatars.githubusercontent.com/u/2666582?v=3","gravatar_id":"","url":"https://api.github.com/users/jbhome","html_url":"https://github.com/jbhome","followers_url":"https://api.github.com/users/jbhome/followers","following_url":"https://api.github.com/users/jbhome/following{/other_user}","gists_url":"https://api.github.com/users/jbhome/gists{/gist_id}","starred_url":"https://api.github.com/users/jbhome/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbhome/subscriptions","organizations_url":"https://api.github.com/users/jbhome/orgs","repos_url":"https://api.github.com/users/jbhome/repos","events_url":"https://api.github.com/users/jbhome/events{/privacy}","received_events_url":"https://api.github.com/users/jbhome/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-04-05T03:09:10Z","updated_at":"2015-04-07T11:39:36Z","closed_at":null,"body":"I was not sure where to put this post. Please feel free to move it if you have a better place.\r\n\r\nFirst things first. I would like to complement you on an amazing piece of work.\r\nI am old enough to remember the first wave of embedded micros, the 6800, 8080, and 6502, and the cost and capability of the kits.\r\nThe Arduino is so much better in so many ways.\r\n\r\nNow the reason for this post.\r\nThis is more a compiler  issue but... here goes.\r\nSorry to be long winded but...\r\nI ran OS2 Warp for a while and kept getting a long 16 + digit hex error message. When I went to the OS2 club and commented on it, one of the gurus commented, run program x, enter the multidigit code and it will tell you what the error is. In this case, there is not floppy in the disk.\r\nSo back to Arduino in particular but C compilers in general.\r\nThe errors produces are typically vague and usually mean your missing some a character, a comma, a bracket, a semi-colon. Rarely does the error message point you to the error but rather to something else affected by the error.\r\nIt would seem in this day and age with hex core processors running at multi-ghz clock rates that error processing could be improved. If you start an array statement, and have missing or wrong element separators, report that and highlight the location in the source file. If you have a structure that is not properly terminated, report that rather than the effect of that on another statement.\r\n\r\nI realize Arduino is found on GCC so perhaps this should/could be addressed in the GCC but it does seem that error reporting is still stuck in the 70's, not much removed from punch cards and cryptic error numbers.\r\n\r\nJust my two cents, or maybe 2 dollars with today's inflation.\r\n\r\nThanks,\r\nJim Brooks\r\n"},"comment":{"url":"https://api.github.com/repos/arduino/Arduino/issues/comments/90517559","html_url":"https://github.com/arduino/Arduino/issues/2914#issuecomment-90517559","issue_url":"https://api.github.com/repos/arduino/Arduino/issues/2914","id":90517559,"user":{"login":"rogerclarkmelbourne","id":6146984,"avatar_url":"https://avatars.githubusercontent.com/u/6146984?v=3","gravatar_id":"","url":"https://api.github.com/users/rogerclarkmelbourne","html_url":"https://github.com/rogerclarkmelbourne","followers_url":"https://api.github.com/users/rogerclarkmelbourne/followers","following_url":"https://api.github.com/users/rogerclarkmelbourne/following{/other_user}","gists_url":"https://api.github.com/users/rogerclarkmelbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/rogerclarkmelbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rogerclarkmelbourne/subscriptions","organizations_url":"https://api.github.com/users/rogerclarkmelbourne/orgs","repos_url":"https://api.github.com/users/rogerclarkmelbourne/repos","events_url":"https://api.github.com/users/rogerclarkmelbourne/events{/privacy}","received_events_url":"https://api.github.com/users/rogerclarkmelbourne/received_events","type":"User","site_admin":false},"created_at":"2015-04-07T11:39:36Z","updated_at":"2015-04-07T11:39:36Z","body":"Hi Jim\r\n\r\nThe Arduino IDE uses standard open source compilers, specifically GCC.\r\n\r\nThe error messages they generate are IMHO the norm when programming in C or C++\r\n\r\nSome newer languages may have better error reporting, as may some commercial C compilers, but the errors messages that gcc generates are pretty much par for the course as far as I'm concerned.\r\n\r\nBtw. I too remember the 8 and 16 bit micros, like the 8080 and the 6502, which I used to program in assembler, and I have been using c compilers on and off for more years than I care to mention ;-)"}}