* [PATCH 2/3] analyzer: reorder initialization of state m_invalid in sm-fd.cc [PR106184] [not found] <20220706142543.3790-1-mirimmad@outlook.com> @ 2022-07-06 14:25 ` Immad Mir 2022-07-06 15:29 ` David Malcolm 2022-07-06 14:25 ` [PATCH 3/3] analyzer: add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning Immad Mir 1 sibling, 1 reply; 4+ messages in thread From: Immad Mir @ 2022-07-06 14:25 UTC (permalink / raw) To: gcc-patches; +Cc: dmalcolm, mirimnan017, Immad Mir, Immad Mir From: Immad Mir <mirimmad17@gmail.com> This patch reorders the initialization of state m_invalid in sm-fd.cc to conform with standard practice in C++. gcc/analyzer/ChangeLog: PR analyzer/106184 * sm-fd.cc (fd_state_machine): Change ordering of initialization of state m_invalid. Signed-off-by: Immad Mir <mirimmad@outlook.com> --- gcc/analyzer/sm-fd.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gcc/analyzer/sm-fd.cc b/gcc/analyzer/sm-fd.cc index 8196d33223a..8e4300b06e2 100644 --- a/gcc/analyzer/sm-fd.cc +++ b/gcc/analyzer/sm-fd.cc @@ -551,11 +551,12 @@ fd_state_machine::fd_state_machine (logger *logger) m_unchecked_read_write (add_state ("fd-unchecked-read-write")), m_unchecked_read_only (add_state ("fd-unchecked-read-only")), m_unchecked_write_only (add_state ("fd-unchecked-write-only")), - m_invalid (add_state ("fd-invalid")), m_valid_read_write (add_state ("fd-valid-read-write")), m_valid_read_only (add_state ("fd-valid-read-only")), m_valid_write_only (add_state ("fd-valid-write-only")), - m_closed (add_state ("fd-closed")), m_stop (add_state ("fd-stop")) + m_invalid (add_state ("fd-invalid")), + m_closed (add_state ("fd-closed")), + m_stop (add_state ("fd-stop")) { } -- 2.25.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/3] analyzer: reorder initialization of state m_invalid in sm-fd.cc [PR106184] 2022-07-06 14:25 ` [PATCH 2/3] analyzer: reorder initialization of state m_invalid in sm-fd.cc [PR106184] Immad Mir @ 2022-07-06 15:29 ` David Malcolm 0 siblings, 0 replies; 4+ messages in thread From: David Malcolm @ 2022-07-06 15:29 UTC (permalink / raw) To: mirimnan017, gcc-patches; +Cc: Immad Mir, Immad Mir On Wed, 2022-07-06 at 19:55 +0530, Immad Mir wrote: > From: Immad Mir <mirimmad17@gmail.com> > > This patch reorders the initialization of state m_invalid in sm-fd.cc > to conform with standard practice in C++. Might want to reword to say that the order of the initializers is now the same as the ordering of the fields in the class decl, or somesuch. I think I already approved this; it's OK to push this to trunk. Thanks Dave > > > gcc/analyzer/ChangeLog: > PR analyzer/106184 > * sm-fd.cc (fd_state_machine): Change ordering of > initialization > of state m_invalid. > > Signed-off-by: Immad Mir <mirimmad@outlook.com> > --- > gcc/analyzer/sm-fd.cc | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/gcc/analyzer/sm-fd.cc b/gcc/analyzer/sm-fd.cc > index 8196d33223a..8e4300b06e2 100644 > --- a/gcc/analyzer/sm-fd.cc > +++ b/gcc/analyzer/sm-fd.cc > @@ -551,11 +551,12 @@ fd_state_machine::fd_state_machine (logger > *logger) > m_unchecked_read_write (add_state ("fd-unchecked-read-write")), > m_unchecked_read_only (add_state ("fd-unchecked-read-only")), > m_unchecked_write_only (add_state ("fd-unchecked-write-only")), > - m_invalid (add_state ("fd-invalid")), > m_valid_read_write (add_state ("fd-valid-read-write")), > m_valid_read_only (add_state ("fd-valid-read-only")), > m_valid_write_only (add_state ("fd-valid-write-only")), > - m_closed (add_state ("fd-closed")), m_stop (add_state ("fd- > stop")) > + m_invalid (add_state ("fd-invalid")), > + m_closed (add_state ("fd-closed")), > + m_stop (add_state ("fd-stop")) > { > } > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 3/3] analyzer: add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning [not found] <20220706142543.3790-1-mirimmad@outlook.com> 2022-07-06 14:25 ` [PATCH 2/3] analyzer: reorder initialization of state m_invalid in sm-fd.cc [PR106184] Immad Mir @ 2022-07-06 14:25 ` Immad Mir 2022-07-06 15:37 ` David Malcolm 1 sibling, 1 reply; 4+ messages in thread From: Immad Mir @ 2022-07-06 14:25 UTC (permalink / raw) To: gcc-patches; +Cc: dmalcolm, mirimnan017, Immad Mir gcc/testsuite/ChangeLog: * gcc.dg/analyzer/fd-4.c: Add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning. Signed-off-by: Immad Mir <mirimmad@outlook.com> --- gcc/testsuite/gcc.dg/analyzer/fd-4.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-4.c b/gcc/testsuite/gcc.dg/analyzer/fd-4.c index c992db619e7..fcfa6168efa 100644 --- a/gcc/testsuite/gcc.dg/analyzer/fd-4.c +++ b/gcc/testsuite/gcc.dg/analyzer/fd-4.c @@ -1,3 +1,5 @@ +#include <stdio.h> + int open(const char *, int mode); void close(int fd); int write (int fd, void *buf, int nbytes); @@ -60,3 +62,11 @@ test_4 (const char *path, void *buf) /* {dg-message "\\(3\\) 'write' on closed file descriptor 'fd'; 'close' was at \\(2\\)" "" {target *-*-*} .-1 } */ } } + +void +test_5 (const char *path) +{ + int fd = open (path, O_RDWR); + close(fd); + printf("%d", fd); /* { dg-bogus "'printf' on a closed file descriptor 'fd'" } */ +} \ No newline at end of file -- 2.25.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 3/3] analyzer: add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning 2022-07-06 14:25 ` [PATCH 3/3] analyzer: add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning Immad Mir @ 2022-07-06 15:37 ` David Malcolm 0 siblings, 0 replies; 4+ messages in thread From: David Malcolm @ 2022-07-06 15:37 UTC (permalink / raw) To: mirimnan017, gcc-patches; +Cc: Immad Mir On Wed, 2022-07-06 at 19:55 +0530, Immad Mir wrote: > gcc/testsuite/ChangeLog: > * gcc.dg/analyzer/fd-4.c: Add a new testcase to demonstrate > passsing > of a file descriptor to a function that does not emit any > warning. The patch itself is OK for trunk, but the initial line of the commit message is probably too long - this gets used as the title of the commit in various git UIs. I can't remember the recommended limit, it might be 80 chars (which can be hard when the leading "analyzer: " takes up 10 chars). Please reduce the length before pushing, maybe to: analyzer: add testcase of using closed fd without warning or somesuch Thanks Dave > > Signed-off-by: Immad Mir <mirimmad@outlook.com> > --- > gcc/testsuite/gcc.dg/analyzer/fd-4.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/gcc/testsuite/gcc.dg/analyzer/fd-4.c > b/gcc/testsuite/gcc.dg/analyzer/fd-4.c > index c992db619e7..fcfa6168efa 100644 > --- a/gcc/testsuite/gcc.dg/analyzer/fd-4.c > +++ b/gcc/testsuite/gcc.dg/analyzer/fd-4.c > @@ -1,3 +1,5 @@ > +#include <stdio.h> > + > int open(const char *, int mode); > void close(int fd); > int write (int fd, void *buf, int nbytes); > @@ -60,3 +62,11 @@ test_4 (const char *path, void *buf) > /* {dg-message "\\(3\\) 'write' on closed file descriptor > 'fd'; 'close' was at \\(2\\)" "" {target *-*-*} .-1 } */ > } > } > + > +void > +test_5 (const char *path) > +{ > + int fd = open (path, O_RDWR); > + close(fd); > + printf("%d", fd); /* { dg-bogus "'printf' on a closed file > descriptor 'fd'" } */ > +} > \ No newline at end of file ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-07-06 15:37 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20220706142543.3790-1-mirimmad@outlook.com> 2022-07-06 14:25 ` [PATCH 2/3] analyzer: reorder initialization of state m_invalid in sm-fd.cc [PR106184] Immad Mir 2022-07-06 15:29 ` David Malcolm 2022-07-06 14:25 ` [PATCH 3/3] analyzer: add a new testcase to demonstrate passsing of a file descriptor to a function that does not emit any warning Immad Mir 2022-07-06 15:37 ` David Malcolm
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).