1. 17 Aug, 2021 1 commit
  2. 13 Aug, 2021 1 commit
  3. 24 Mar, 2021 1 commit
  4. 30 Jun, 2020 1 commit
  5. 20 Sep, 2019 1 commit
  6. 22 May, 2019 1 commit
    • Michael Meskes's avatar
      Implement PREPARE AS statement for ECPG. · a1dc6ab4
      Michael Meskes authored
      Besides implementing the new statement this change fix some issues with the
      parsing of PREPARE and EXECUTE statements. The different forms of these
      statements are now all handled in a ujnified way.
      
      Author: Matsumura-san <matsumura.ryo@jp.fujitsu.com>
      a1dc6ab4
  7. 18 Feb, 2019 1 commit
    • Michael Meskes's avatar
      Add bytea datatype to ECPG. · 050710b3
      Michael Meskes authored
      So far ECPG programs had to treat binary data for bytea column as 'char' type.
      But this meant converting from/to escaped format with PQunescapeBytea/
      PQescapeBytea() and therefore forcing users to add unnecessary code and cost
      for the conversion in runtime. By adding a dedicated datatype for bytea most of
      this special handling is no longer needed.
      
      Author: Matsumura-san ("Matsumura, Ryo" <matsumura.ryo@jp.fujitsu.com>)
      
      Discussion: https://postgr.es/m/flat/03040DFF97E6E54E88D3BFEE5F5480F737A141F9@G01JPEXMBYT04
      050710b3
  8. 16 Feb, 2019 1 commit
    • Michael Meskes's avatar
      Add DECLARE STATEMENT support to ECPG. · bd7c95f0
      Michael Meskes authored
      DECLARE STATEMENT is a statement that lets users declare an identifier
      pointing at a connection.  This identifier will be used in other embedded
      dynamic SQL statement such as PREPARE, EXECUTE, DECLARE CURSOR and so on.
      When connecting to a non-default connection, the AT clause can be used in
      a DECLARE STATEMENT once and is no longer needed in every dynamic SQL
      statement.  This makes ECPG applications easier and more efficient.  Moreover,
      writing code without designating connection explicitly improves portability.
      
      Authors: Ideriha-san ("Ideriha, Takeshi" <ideriha.takeshi@jp.fujitsu.com>)
               Kuroda-san ("Kuroda, Hayato" <kuroda.hayato@jp.fujitsu.com>)
      
      Discussion: https://postgr.es/m4E72940DA2BF16479384A86D54D0988A565669DF@G01JPEXMBKW04
      bd7c95f0
  9. 01 Dec, 2018 1 commit
  10. 12 Sep, 2017 1 commit
  11. 05 Sep, 2017 1 commit
  12. 06 Feb, 2017 1 commit
  13. 11 Dec, 2016 1 commit
    • Tom Lane's avatar
      Use "%option prefix" to set API names in ecpg's lexer. · 92fb6498
      Tom Lane authored
      Clean up some technical debt left behind by commit 72b1e3a2: instead of
      quickly hacking the name of base_yylex() with a #define, set it properly
      with "%option prefix".  This causes the names of pgc.l's other exported
      symbols to change as well, so run around and modify the outside references
      to them as needed.  Similarly, make pgc.l's external references to
      base_yylval use that variable's true name instead of a macro.
      
      The reason for doing this now is that the quick-hack solution will fail
      with future versions of flex, as reported by Дилян Палаузов.
      Hence, back-patch into 9.6 where the previous commit appeared, since
      it's likely people will build 9.6 with newer flex versions during
      its lifetime.
      
      Discussion: https://postgr.es/m/d845c1af-e18d-6651-178f-9f08cdf37e10@aegee.org
      92fb6498
  14. 26 Mar, 2015 1 commit
    • Tom Lane's avatar
      Tweak __attribute__-wrapping macros for better pgindent results. · 785941cd
      Tom Lane authored
      This improves on commit bbfd7eda by
      making two simple changes:
      
      * pg_attribute_noreturn now takes parentheses, ie pg_attribute_noreturn().
      Likewise pg_attribute_unused(), pg_attribute_packed().  This reduces
      pgindent's tendency to misformat declarations involving them.
      
      * attributes are now always attached to function declarations, not
      definitions.  Previously some places were taking creative shortcuts,
      which were not merely candidates for bad misformatting by pgindent
      but often were outright wrong anyway.  (It does little good to put a
      noreturn annotation where callers can't see it.)  In any case, if
      we would like to believe that these macros can be used with non-gcc
      compilers, we should avoid gratuitous variance in usage patterns.
      
      I also went through and manually improved the formatting of a lot of
      declarations, and got rid of excessively repetitive (and now obsolete
      anyway) comments informing the reader what pg_attribute_printf is for.
      785941cd
  15. 11 Mar, 2015 1 commit
    • Andres Freund's avatar
      Add macros wrapping all usage of gcc's __attribute__. · bbfd7eda
      Andres Freund authored
      Until now __attribute__() was defined to be empty for all compilers but
      gcc. That's problematic because it prevents using it in other compilers;
      which is necessary e.g. for atomics portability.  It's also just
      generally dubious to do so in a header as widely included as c.h.
      
      Instead add pg_attribute_format_arg, pg_attribute_printf,
      pg_attribute_noreturn macros which are implemented in the compilers that
      understand them. Also add pg_attribute_noreturn and pg_attribute_packed,
      but don't provide fallbacks, since they can affect functionality.
      
      This means that external code that, possibly unwittingly, relied on
      __attribute__ defined to be empty on !gcc compilers may now run into
      warnings or errors on those compilers. But there shouldn't be many
      occurances of that and it's hard to work around...
      
      Discussion: 54B58BA3.8040302@ohmu.fi
      Author: Oskari Saarenmaa, with some minor changes by me.
      bbfd7eda
  16. 22 Oct, 2014 1 commit
  17. 21 Jul, 2014 1 commit
  18. 28 May, 2014 2 commits
    • Tom Lane's avatar
      Revert "Fix bogus %name-prefix option syntax in all our Bison files." · 71ed8b3c
      Tom Lane authored
      This reverts commit 45b7abe5.
      
      It turns out that the %name-prefix syntax without "=" does not work
      at all in pre-2.4 Bison.  We are not prepared to make such a large
      jump in minimum required Bison version just to suppress a warning
      message in a version hardly any developers are using yet.
      When 3.0 gets more popular, we'll figure out a way to deal with this.
      In the meantime, BISONFLAGS=-Wno-deprecated is recommendable for
      anyone using 3.0 who doesn't want to see the warning.
      71ed8b3c
    • Tom Lane's avatar
      Fix bogus %name-prefix option syntax in all our Bison files. · 45b7abe5
      Tom Lane authored
      %name-prefix doesn't use an "=" sign according to the Bison docs, but it
      silently accepted one anyway, until Bison 3.0.  This was originally a
      typo of mine in commit 012abeba, and we
      seem to have slavishly copied the error into all the other grammar files.
      
      Per report from Vik Fearing; analysis by Peter Eisentraut.
      
      Back-patch to all active branches, since somebody might try to build
      a back branch with up-to-date tools.
      45b7abe5
  19. 27 Nov, 2013 1 commit
  20. 20 Nov, 2013 1 commit
  21. 04 Jan, 2012 1 commit
  22. 27 Dec, 2011 1 commit
  23. 01 Nov, 2011 1 commit
  24. 09 Jan, 2011 1 commit
  25. 23 Nov, 2010 1 commit
  26. 20 Sep, 2010 1 commit
  27. 10 Sep, 2010 1 commit
  28. 25 May, 2010 1 commit
  29. 20 May, 2010 1 commit
  30. 09 Mar, 2010 1 commit
  31. 29 Jan, 2010 2 commits
  32. 26 Jan, 2010 1 commit
  33. 05 Nov, 2009 1 commit
  34. 08 Sep, 2009 1 commit
    • Tom Lane's avatar
      Remove outside-the-scanner references to "yyleng". · 4d3456e8
      Tom Lane authored
      It seems the flex developers have decided to change yyleng from int to size_t.
      This has already happened in the latest release of OS X, and will start
      happening elsewhere once the next release of flex appears.  Rather than trying
      to divine how it's declared in any particular build, let's just remove the one
      existing not-very-necessary external usage.
      
      Back-patch to all supported branches; not so much because users in the field
      are likely to care about building old branches with cutting-edge flex, as
      to keep OSX-based buildfarm members from having problems with old branches.
      4d3456e8
  35. 07 Aug, 2009 1 commit
  36. 10 Jun, 2009 1 commit
  37. 03 Jun, 2009 1 commit
  38. 23 Jan, 2009 1 commit