anchor.diff:                       :max-geometry-image-uniforms
                        :max-fragment-image-uniforms
                        :max-combined-image-uniforms
  +                     ;; 23.78
                        :max-combined-vertex-uniform-components
                        :max-combined-geometry-uniform-components
                        :max-combined-tess-control-uniform-components
                        :max-combined-tess-evaluation-uniform-components
                        :max-combined-fragment-uniform-components
  +                     ;; 23.80 implementation dependent debug output
  +                     ;; state
  +                     :max-debug-message-length
  +                     :max-debug-logged-messages
  +                     :max-debug-group-stack-depth
  +                     :max-label-length
  +                     ;; 23.81 implementation dependent values
  +                     :max-framebuffer-width
  +                     :max-framebuffer-height
  +                     :max-framebuffer-layers
  +                     :max-framebuffer-samples
                        :max-sample-mask-words
                        :max-samples
                        :max-color-texture-samples
                        :max-depth-texture-samples
                        :max-integer-samples
  -                     :quads-follow-provoking-vertex-convention
  +                     :quads-follow-provoking-vertex-convention ;; compat
  +                     ;; :query-counter-bits
                        :max-server-wait-timeout
  +                     ;; 23.82
                        :min-fragment-interpolation-offset
                        :max-fragment-interpolation-offset
                        :fragment-interpolation-offset-bits
  +                     :max-draw-buffers
  +                     :max-dual-source-draw-buffers
  +                     :max-color-attachments
  +                     ;; 23.84 implementation dependent transform
  +                     ;; feedback limits
                        :max-transform-feedback-interleaved-components
                        :max-transform-feedback-separate-attribs
                        :max-transform-feedback-separate-components
                        :max-transform-feedback-buffers
  -                     :max-dual-source-draw-buffers
  +                     ;; ??
  +                     :smooth-point-size-range
  +                     :smooth-point-size-granularity
  +                     :line-width-range
  +                     :line-width-granularity
  +                     :max-combined-image-units-and-fragment-outputs
                        :aux-buffers
  -                     :max-draw-buffers
  -                     :max-color-attachments
                        :implementation-color-read-format)
             do (format t "~s: ~a~%" i (get* i)))
  +    (let ((slv (ignore-errors (gl:get* :num-shading-language-versions))))
  +      (when slv
  +        (format t "shading language versions:~%~{  ~s~%~}"
  +                (loop for i below slv collect (gl:get-string-i :shading-language-version i)))))
  +    (format t "max anisotropy: ~s~%" (gl:get-float :max-texture-max-anisotropy-ext 1))
       (when *gl-info-verbose*
         (format t "----~%")
         (loop for (i nil nil m) in gl::*query-enum-sizes*
  
positive.code:     (format t "GL renderer: ~a~%" (get* :renderer))
      (format t "GL extensions: ~a~%" (get* :extensions))
  
      (loop for i in '(:max-clip-planes
                       :max-clip-distances
                       :max-3d-texture-size
                       :max-texture-size
                       :max-array-texture-layers
                       :max-texture-lod-bias
                       :max-cube-map-texture-size
                       :max-renderbuffer-size
                       :max-pixel-map-table
                       :max-name-stack-depth
                       :max-list-nesting
                       :max-eval-order
                       :max-viewport-dims
                       :max-viewports
                       :viewport-subpixel-bits
                       :viewport-bounds-range
                       :max-attrib-stack-depth
                       :max-client-attrib-stack-depth
                       :aliased-point-size-range
                       :point-size-range
                       :point-size-granularity
                       :smooth-point-size-range
                       :smooth-point-size-granularity
                       :aliased-line-width-range
                       :line-width-range
                       :line-width-granularity
                       :smooth-line-width-range
                       :smooth-line-width-granularity
                       :max-elements-indices
                       :max-elements-vertices
                       :compressed-texture-formats
                       :num-compressed-texture-formats
                       :num-program-binary-formats
                       :program-binary-formats
                       :num-shader-binary-formats
                       :shader-binary-formats
                       :shader-compiler
                       :min-map-buffer-alignment
                       :max-texture-buffer-size
                       :max-rectangle-texture-size
                       :num-extensions
                       :context-flags
                       :max-texture-units
                       :max-vertex-attribs
                       :max-vertex-uniform-components
                       :max-vertex-uniform-vectors
  
negative.code:                      :max-vertex-streams
                       :max-geometry-atomic-counter-buffers
                       :max-geometry-atomic-counters
                       :max-geometry-shader-storage-blocks
                       ;; 23.73 implementation dependent fragment shader
                       ;; limits
                       :max-fragment-uniform-components
                       :max-fragment-uniform-vectors
                       :max-fragment-uniform-blocks
                       :max-fragment-input-components
                       :max-texture-image-units
                       :min-program-texture-gather-offset
                       :max-program-texture-gather-offset
                       :max-texture-units ;; compat
                       :max-texture-coords ;; compat
                       :max-fragment-atomic-counter-buffers
                       :max-fragment-atomic-counters
                       :max-fragment-shader-storage-blocks
                       ;; 23.74 implementation dependent compute shader
                       ;; limits
                       :max-compute-work-group-count
                       :max-compute-work-group-size
                       :max-compute-work-group-invocations
                       :max-compute-uniform-blocks
                       :max-compute-texture-image-units
                       :max-compute-atomic-counter-buffers
                       :max-compute-atomic-counters
                       :max-compute-shared-memory-size
                       :max-compute-uniform-components
                       :max-compute-image-uniforms
                       :max-combined-compute-uniform-components
                       :max-compute-shader-storage-blocks
                       ;; 23.75 implementation dependent aggregate
                       ;; limits
                       :min-program-texel-offset
                       :max-program-texel-offset
                       :max-uniform-buffer-bindings
  