<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>148754</bug_id>
          
          <creation_ts>2015-09-03 15:30:29 -0700</creation_ts>
          <short_desc>Migrate from flex/bison -&gt; boost::spirit or similar</short_desc>
          <delta_ts>2015-09-08 14:43:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>achristensen</cc>
    
    <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>mjs</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1123187</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-09-03 15:30:29 -0700</bug_when>
    <thetext>The Flex and Bison parser generators are becoming an every increasing maintenance burden:

1. More recent versions of this software have undesirable GPL v3 licensing.
2. Different platforms have access to different versions of the software (e.g., Mac is limited to Bison 2.3)
3. Flex and Bison are difficult to obtain and use on Windows.

Instead, it would be nice to move towards a more modern parser generator approach, possibly using something like Boost::spirit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123189</commentid>
    <comment_count>1</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-09-03 15:31:35 -0700</bug_when>
    <thetext>The first question I have is whether the parsers produced by Boost::Spirit are known to have comparable performance to Flex/Bison?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124392</commentid>
    <comment_count>2</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-09-08 14:22:55 -0700</bug_when>
    <thetext>I also wonder if we&apos;d have to include a copy of all of boost to be able to use spirit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124401</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-09-08 14:43:15 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I also wonder if we&apos;d have to include a copy of all of boost to be able to
&gt; use spirit.

Either that, or add it to the build requirements. Either way, it seems like a similar burden to getting a usable Flex/Bison setup. So perhaps this project is a waste of time.

If Visual Studio or Xcode shipped with some version of boost, we could perhaps use it, but it seem like this is not going to work.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>